In the Linux kernel, the following vulnerability has been resolved:
scsi: lpfc: Fix hard lockup when reading the rx_monitor from debugfs
During I/O and simultaneous cat of /sys/kernel/debug/lpfc/fnX/rx_monitor, a hard lockup similar to the call trace below may occur.
The spinlockbh in lpfcrxmonitor_report is not protecting from timer interrupts as expected, so change the strength of the spin lock to _irq.
Kernel panic - not syncing: Hard LOCKUP CPU: 3 PID: 110402 Comm: cat Kdump: loaded
exception RIP: nativequeuedspinlockslowpath+91
[IRQ stack] nativequeuedspinlockslowpath at ffffffffb814e30b rawspinlock at ffffffffb89a667a lpfcrxmonitorrecord at ffffffffc0a73a36 [lpfc] lpfccmftimer at ffffffffc0abbc67 [lpfc] _hrtimerrunqueues at ffffffffb8184250 hrtimerinterrupt at ffffffffb8184ab0 smpapictimerinterrupt at ffffffffb8a026ba apictimer_interrupt at ffffffffb8a01c4f [End of IRQ stack]
apictimerinterrupt at ffffffffb8a01c4f lpfcrxmonitorreport at ffffffffc0a73c80 [lpfc] lpfcrxmonitorread at ffffffffc0addde1 [lpfc] fullproxyread at ffffffffb83e7fc3 vfsread at ffffffffb833fe71 ksysread at ffffffffb83402af dosyscall64 at ffffffffb800430b entrySYSCALL64afterhwframe at ffffffffb8a000ad
{
"osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2022/50xxx/CVE-2022-50744.json",
"cna_assigner": "Linux"
}