CVE-2026-93815

CVE-2026-93815

published September 24, 2026

CVSS
—
EPSS
0%
Percentile
6.4
In the wild
Unconfirmed
What it is

In the Linux kernel, the following vulnerability has been resolved:

net: au1000: move free_irq out of the close-time spinlocked section

au1000_close() calls free_irq() while aup->lock is still held with

spin_lock_irqsave(). free_irq() can sleep because it takes the IRQ

descriptor request mutex, so it does not belong inside the close-time

spinlocked section.

This was found by our static analysis tool and then confirmed by manual

review of the in-tree au1000_close() .ndo_stop path. The reviewed path

keeps aup->lock held across the MAC reset, queue stop and

free_irq(dev->irq, dev).

A directed runtime validation kept that ndo_stop carrier and the same

free_irq(dev->irq, dev) operation under the driver lock. Lockdep reported

"BUG: sleeping function called from invalid context" and "Invalid wait

context" while free_irq() was taking desc->request_mutex, with

au1000_close() and free_irq() on the stack.

Drop aup->lock before freeing the IRQ. The protected close-time work still

stops the device and queue before IRQ teardown, but the sleepable IRQ core

path now runs outside the spinlocked section.

The record
Technical detail
CVSS
Not scored
CVSS v4.0
Not supplied
EPSS
0.00173 · 6.4th percentile
Published
2026-09-24T21:17Z
References (7)
EPSS history
Timeline
  • 26 SEP 03:27Z
    EPSS moved — → 0%
    epss
  • 24 SEP 16:02Z
    net: au1000: move free_irq out of the close-time spinlocked section
    cvelistv5