diff options
| author | Sumit Gupta <sumitg@nvidia.com> | 2026-01-21 15:42:05 +0530 |
|---|---|---|
| committer | Thierry Reding <treding@nvidia.com> | 2026-03-27 15:30:54 +0100 |
| commit | a5f51b04cbb3ae0f9cb2c4488952b775ebb0ccbf (patch) | |
| tree | 2b47125b450f76233922c544aea45a881c6f428d /rust/kernel/gpu/git@git.tavy.me:linux-stable.git | |
| parent | 499f7e5ebbdd9ff0c4d532b1c432f8a61ff585b3 (diff) | |
soc/tegra: cbb: Fix cross-fabric target timeout lookup
When a fabric receives an error interrupt, the error may have
occurred on a different fabric. The target timeout lookup was using
the wrong base address (cbb->regs) with offsets from a different
fabric's target map, causing a kernel page fault.
Unable to handle kernel paging request at virtual address ffff80000954cc00
pc : tegra234_cbb_get_tmo_slv+0xc/0x28
Call trace:
tegra234_cbb_get_tmo_slv+0xc/0x28
print_err_notifier+0x6c0/0x7d0
tegra234_cbb_isr+0xe4/0x1b4
Add tegra234_cbb_get_fabric() to look up the correct fabric device
using fab_id, and use its base address for accessing target timeout
registers.
Fixes: 25de5c8fe0801 ("soc/tegra: cbb: Improve handling for per SoC fabric data")
Signed-off-by: Sumit Gupta <sumitg@nvidia.com>
Signed-off-by: Thierry Reding <treding@nvidia.com>
Diffstat (limited to 'rust/kernel/gpu/git@git.tavy.me:linux-stable.git')
0 files changed, 0 insertions, 0 deletions
