diff options
| author | Mike Marciniszyn <[email protected]> | 2021-10-13 10:18:52 -0400 |
|---|---|---|
| committer | Jason Gunthorpe <[email protected]> | 2021-10-13 13:33:22 -0300 |
| commit | 13bac861952a78664907a0f927d3e874e9a59034 (patch) | |
| tree | 81a785ac857883315c21f69a87fca1b1761314a5 /lib/mpi/mpi-div.c | |
| parent | d39bf40e55e666b5905fdbd46a0dced030ce87be (diff) | |
IB/hfi1: Fix abba locking issue with sc_disable()
sc_disable() after having disabled the send context wakes up any waiters
by calling hfi1_qp_wakeup() while holding the waitlock for the sc.
This is contrary to the model for all other calls to hfi1_qp_wakeup()
where the waitlock is dropped and a local is used to drive calls to
hfi1_qp_wakeup().
Fix by moving the sc->piowait into a local list and driving the wakeup
calls from the list.
Fixes: 099a884ba4c0 ("IB/hfi1: Handle wakeup of orphaned QPs for pio")
Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Mike Marciniszyn <[email protected]>
Reported-by: TOTE Robot <[email protected]>
Signed-off-by: Dennis Dalessandro <[email protected]>
Signed-off-by: Jason Gunthorpe <[email protected]>
Diffstat (limited to 'lib/mpi/mpi-div.c')
0 files changed, 0 insertions, 0 deletions