diff options
| author | Fan Ye <fy15309206903@gmail.com> | 2026-08-10 12:14:13 +0000 |
|---|---|---|
| committer | Mika Westerberg <mika.westerberg@linux.intel.com> | 2026-08-11 05:57:59 +0200 |
| commit | 86feaba911f2f1a540a7695c8f4a98fd0fd60ac4 (patch) | |
| tree | ae97c0ecfe3da5f257a2b4bb14b62603d4ee1957 /include | |
| parent | e8158c8a6a232a70ae70c5acfaf7008a99b716c1 (diff) | |
| download | linux-86feaba911f2f1a540a7695c8f4a98fd0fd60ac4.tar.gz linux-86feaba911f2f1a540a7695c8f4a98fd0fd60ac4.zip | |
thunderbolt: Clamp DMA tunnel credits to what a hop register can hold
struct tb_regs_hop::initial_credits is 7 bits wide, but neither of the
values tb_tunnel_alloc_dma() picks from is bounded by that: the
dma_credits module parameter has no upper limit, and neither does the
host router's baMaxHI. A larger count survives until tb_path_activate()
copies it into the register and keeps the low bits, leaving the path on
a credit count nobody asked for.
Clamp it in tb_tunnel_alloc_dma(), the only entry point for DMA tunnels;
every step below it can only lower the value further. Carry the count in
an unsigned int while at it.
Assisted-by: Claude:claude-opus-5
Signed-off-by: Fan Ye <fy15309206903@gmail.com>
Signed-off-by: Mika Westerberg <mika.westerberg@linux.intel.com>
Diffstat (limited to 'include')
0 files changed, 0 insertions, 0 deletions
