CVE-2026-98496

CVE-2026-98496

published October 18, 2026

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

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

net: airoha: npu: cancel wdt_work after releasing the WDT IRQ

airoha_npu_remove() calls cancel_work_sync() on each core's wdt_work,

but the watchdog IRQ that queues it is requested with devm_request_irq()

and is freed only after .remove() returns. airoha_npu_wdt_handler() can

therefore schedule_work() again once the cancel has returned. struct

airoha_npu, which contains the work, is devm_kzalloc()'d and is freed in

that same unwind, so the late work dereferences freed memory.

Register the work with devm_work_autocancel() before devm_request_irq()

and drop .remove(). Devres runs in reverse order, so the IRQ is freed

before cancel_work_sync(), including when probe fails. A cancel left in

.remove() cannot get that order. Initializing the work first also stops

a pending watchdog interrupt from queuing an uninitialized work item.

Probe currently calls INIT_WORK() only after devm_request_irq().

This issue was identified during our ongoing static-analysis research

while reviewing kernel code.

The record
Technical detail
CVSS
Not scored
CVSS v4.0
Not supplied
EPSS
0.00198 · 9.0th percentile
Published
2026-10-18T20:17Z
References (3)
EPSS history
Timeline
  • 20 OCT 03:34Z
    EPSS moved — → 0%
    epss
  • 18 OCT 15:16Z
    net: airoha: npu: cancel wdt_work after releasing the WDT IRQ
    cvelistv5
  • 18 OCT 15:16Z
    net: airoha: npu: cancel wdt_work after releasing the WDT IRQ
    cvelistv5