CVE-2026-98094

Medium

Description

In the Linux kernel, the following vulnerability has been resolved: staging: fbtft: make dirty_lock IRQ-safe fbtft_mkdirty() can be reached from the fbcon rendering path while processing printk() in hardirq context. Meanwhile, dirty_lock is also taken by fbtft_deferred_io() in workqueue context with local interrupts enabled. Lockdep reports a possible IRQ lock inversion involving dirty_lock and console_owner. A hardirq can interrupt a CPU holding dirty_lock and enter the console rendering path, which can attempt to acquire dirty_lock again. The following lockdep report was observed on an RK3566 system with CONFIG_PROVE_LOCKING enabled: WARNING: possible irq lock inversion dependency detected swapper/2/0 just changed the state of lock: (console_owner){-...}-{0:0} but this lock took another, HARDIRQ-unsafe lock in the past: (&par->dirty_lock){+.+.}-{2:2} CPU0 CPU1 ---- ---- lock(&par->dirty_lock); local_irq_disable(); lock(console_owner); lock(&par->dirty_lock); <Interrupt> lock(console_owner); *** DEADLOCK *** Use spin_lock_irqsave() for fbtft_mkdirty() and spin_lock_irq() for fbtft_deferred_io(). They only access the dirty line range, so the IRQ-off regions remain short.

SeverityMedium
CVSS5.5
Exploit probability—
ProductLinux Kernel
PublishedSep 25, 2026
First seenSep 25, 2026

How to fix

Update
  • linux linux_kernel5.10.271, 5.15.222, 6.1.189, 6.6.158, 6.12.111, 6.18.53, 7.2.7 or later

Affected products

ProductAffected versionsFixed in
linux linux_kernel4.0 ≤ v < 5.10.271, 5.11 ≤ v < 5.15.222, 5.16 ≤ v < 6.1.189, 6.2 ≤ v < 6.6.158, 6.7 ≤ v < 6.12.111, 6.13 ≤ v < 6.18.53, 6.19 ≤ v < 7.2.7, 7.35.10.271, 5.15.222, 6.1.189, 6.6.158, 6.12.111, 6.18.53, 7.2.7

Check your version

Choose the product and enter the version you run to see whether it falls in the affected range.

In the Intelligence 360 plan

Attack Surface Management

See the assets tied to your domains, the technologies they run and known vulnerabilities in one list.