Executive brief
The fnic SCSI device driver in the Linux kernel contains a memory allocation issue that can cause system instability. When processing VLAN configuration responses, the driver attempts a potentially-blocking memory allocation while holding a spinlock (a primitive that must complete immediately without blocking), which can trigger warnings or deadlock the system. This affects systems using Fibre Channel over Ethernet networking with fnic-compatible SCSI adapters.
Technical details
The vulnerability is a sleeping-from-invalid-context bug in the fnic driver's fnic_fcoe_process_vlan_resp() function. The function calls kzalloc() with GFP_KERNEL flag while holding vlans_lock via spin_lock_irqsave(), which acquires an IRQ-safe spinlock. GFP_KERNEL allocations may sleep (e.g., waiting for memory reclaim), which is forbidden in atomic/spinlock context and triggers kernel warnings or deadlock. The fix changes the allocation to use GFP_ATOMIC, which performs non-blocking allocation suitable for atomic context. This is a kernel memory management correctness issue with local denial-of-service potential, not a security vulnerability leading to privilege escalation or data exposure.
Affected products
- Linux Linux kernel various (patched in 6.11.y and later stable series)
Timeline
- 2026-09-11: disclosed: Published on NVD
- 2026-08-07: patched: Patch merged in main kernel tree (commit 9639c63...)