Commit 2acc635
scsi: mpi3mr: Use IRQ save variants of spinlock to protect chain frame allocation
Driver uses spin lock without irqsave when it needs to acquire a chain
frame. This is done to protect chain frame allocation from multiple
submission threads. If there is any I/O queued from an interrupt context,
and if that requires a chain frame, and if the chain lock is held by the CPU
which got interrupted, then there will be a possible deadlock.
Signed-off-by: Ranjan Kumar <ranjan.kumar@broadcom.com>
Link: https://lore.kernel.org/r/20230406101819.10109-1-ranjan.kumar@broadcom.com
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>1 parent b32283d commit 2acc635
1 file changed
Lines changed: 3 additions & 3 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
3331 | 3331 | | |
3332 | 3332 | | |
3333 | 3333 | | |
| 3334 | + | |
3334 | 3335 | | |
| 3336 | + | |
3335 | 3337 | | |
3336 | | - | |
3337 | 3338 | | |
3338 | 3339 | | |
3339 | 3340 | | |
3340 | 3341 | | |
3341 | | - | |
3342 | 3342 | | |
3343 | 3343 | | |
3344 | | - | |
3345 | 3344 | | |
3346 | 3345 | | |
| 3346 | + | |
3347 | 3347 | | |
3348 | 3348 | | |
3349 | 3349 | | |
| |||
0 commit comments