mirror of
https://github.com/torvalds/linux.git
synced 2026-09-25 17:42:03 +02:00
Locked QP and CQ lookups from EQ interrupts can deadlock with create-path XArray updates. If an interrupt arrives while the create path holds the plain xa_lock, the lookup spins forever trying to acquire the same lock. Use IRQ-safe XArray helpers for all QP and CQ create-path updates, including the GSI QP store and error paths. Initialize both arrays with XA_FLAGS_LOCK_IRQ so sleeping allocations preserve interrupt state. Fixes: |
||
|---|---|---|
| .. | ||
| erdma_cm.c | ||
| erdma_cm.h | ||
| erdma_cmdq.c | ||
| erdma_cq.c | ||
| erdma_eq.c | ||
| erdma_hw.h | ||
| erdma_main.c | ||
| erdma_qp.c | ||
| erdma_verbs.c | ||
| erdma_verbs.h | ||
| erdma.h | ||
| Kconfig | ||
| Makefile | ||