Vulnerabilities

Vulnerability · CVE-2026-98398

In the Linux kernel, the following vulnerability has been resolved: locking/lockdep: Invalidate stale class_cache entries for zapped classes syzbot reported a lockdep splat hitting

Published Oct 14, 2026 · catalog updated Oct 17, 2026 · In the Linux kernel,

Check if you run it

No confirmed exploitation is on record for CVE-2026-98398. EPSS is 0.21%. Act only if a listed version of In the Linux kernel, is installed.

Gaps on this record

  • The stored product name is a package slug. The name on this page is taken from the title (In the Linux kernel,).
  • No vendor fix or required action is stored. Compare the linked advisory before you change production.
Severity
Medium—
Known exploitation
Not in CISA/VulnCheck KEV
EPSS
0.21%
Remediation
Advisory link
Affected products
Debian:12 linux · Debian:13 linux · Debian:14 linux

In the Linux kernel, the following vulnerability has been resolved: locking/lockdep: Invalidate stale class_cache entries for zapped classes syzbot reported a lockdep splat hitting DEBUG_LOCKS_WARN_ON(1) in hlock_class() due to an invalid class_idx: WARNING: kernel/locking/lockdep.c:238 at __lock_acquire+0x382/0x2cf0 kernel/locking/lockdep.c:5203 Workqueue: wg-crypt-wg0 wg_packet_tx_worker RIP: 0010:hlock_class kernel/locking/lockdep.c:238 [inline] RIP: 0010:check_wait_context kernel/locking/lockdep.c:4870 [inline] RIP: 0010:__lock_acquire+0x389/0x2cf0 kernel/locking/lockdep.c:5203 Call Trace: lock_acquire+0x106/0x350 kernel/locking/lockdep.c:5886 _raw_spin_lock+0x2e/0x40 kernel/locking/spinlock.c:173 tcp_tsq_handler+0x29/0x200 net/ipv4/tcp_output.c:1291 tcp_tsq_workfn+0x384/0x410 net/ipv4/tcp_output.c:1325 ... When a lock class is zapped (e.g. during module unload or key unregistration), zap_class() clears the class's bit in lock_classes_in_use and removes it from the class hash table. However, existing lockdep_map instances embedded in data structures may still retain a pointer to the zapped class in their class_cache[] array. When __lock_acquire() subsequently runs on such a lock, it finds lock->class_cache[subclass] != NULL, skipping register_lock_class() and assigning hlock->class_idx to the index of the zapped class. When check_wait_context() or hlock_class() inspects the held_lock, it finds !test_bit(class_idx, lock_classes_in_use) and warns. Furthermore, if the zapped slot is subsequently re-allocated to an unrelated lock key, the stale class_cache entry would erroneously match the unrelated class (ABA issue). Add lock_class_cache_is_valid() to validate that the cached class is within lock_classes bounds, still allocated in lock_classes_in_use (using uninstrumented arch_test_bit() in __always_inline context so it is safe in noinstr contexts like match_held_lock()), and that class->key matches the expected subkey (taking lockdep_set_subclass() overrides into

Are you affected?

Enter the version you run. The result uses only the ranges stored on this record.

The check returns affected, not affected, or incomplete. It does not guess a version that is missing from the record.

  • Debian:12 linux0 → 6.1.190-1
  • Debian:13 linux0 → 6.12.111-1
  • Debian:14 linux0 → 7.2.7-1

How to fix CVE-2026-98398

What to do

Three questions, each answered from this record only. Confirm the vendor advisory before you patch.

Should you patch?

No confirmed exploitation is on record for CVE-2026-98398. EPSS is 0.21%. Act only if a listed version of In the Linux kernel, is installed.

Which versions are affected?

Compare what you have installed with 0 → 6.1.190-1, 0 → 6.12.111-1, 0 → 7.2.7-1. Compare the installed version with the linked vendor advisory before you change production.

What should an analyst verify?

No weakness class is stored. EPSS 0.21%. There is no CISA KEV listing. No Exploit-DB or Metasploit reference is linked. Use the source links for the original advisory.

Technology hubs

Code

The project this record applies to. Exploit listings stay in References.

No public source repository is identified for this product.

Timeline

Detection, updates, and resolution for this record.

  1. Oct 14, 2026 · Tenable CVE Database

    Detected

    In the Linux kernel, the following vulnerability has been resolved: locking/lockdep: Invalidate stale class_cache entries for zapped classes syzbot reported a lockdep splat hitting DEBUG_LOCKS_WARN_ON(1) in hlock_class() due to an invalid class_idx: WARNING: kernel/locking/lockdep.c:238 at __lock_acquire+0x382/0x2cf0 kernel/locking/lockdep.c:5203 Workqueue: wg-crypt-wg0 wg_packet_tx_worker RIP: 00

  2. Oct 17, 2026 · OpenSSF OSV / OSV Scanner

    Fix available

    linux fixed in 6.1.190-1; linux fixed in 6.12.111-1; linux fixed in 7.2.7-1

  3. Oct 17, 2026 · OpenSSF OSV / OSV Scanner

    Fix available

    linux fixed in 6.1.190-1

  4. Oct 17, 2026 · OpenSSF OSV / OSV Scanner

    Fix available

    linux fixed in 6.12.111-1

  5. Oct 17, 2026 · OpenSSF OSV / OSV Scanner

    Fix available

    linux fixed in 7.2.7-1

  6. Oct 17, 2026 · OpenSSF OSV / OSV Scanner

    Updated

    In the Linux kernel, the following vulnerability has been resolved: locking/lockdep: Invalidate stale class_cache entries for zapped classes syzbot reported a lockdep splat hitting DEBUG_LOCKS_WARN_ON(1) in hlock_class() due to an invalid class_idx: WARNING: kernel/locking/lockdep.c:238 at __lock_acquire+0x382/0x2cf0 kernel/locking/lockdep.c:5203 Workqueue: wg-crypt-wg0 wg_packet_tx_worker RIP: 00

Sources

  • CVE.orgVulnerability recordCVE-2026-98398

    Official CVE identifier

    cve.org
  • FIRST EPSSExploitation probabilityCVE-2026-98398

    30-day exploitation probability 0.2%

    first.org
  • OpenSSF OSV / OSV ScannerPackage advisoryDEBIAN-CVE-2026-98398
    osv.dev
  • Tenable CVE DatabaseVulnerability recordCVE-2026-98398

    In the Linux kernel, the following vulnerability has been resolved: locking/lockdep: Invalidate stale class_cache entries for zapped classes syzbot reported a lockdep splat hitting DEBUG_LOCKS_WARN_ON(1) in hlock_class() due to an invalid class_idx: WARNING: kernel/locking/lockdep.c:238 at __lock_acquire+0x382/0x2cf0 kernel/locking/lockdep.c:5203 Workqueue: wg-crypt-wg0 wg_packet_tx_worker RIP: 00

    tenable.com

References

Freshness

Last verified in this catalog Oct 18, 2026. Significant claims (KEV, EPSS, CVSS, affected ranges) come from the source rows above — open the original publisher for the authoritative advisory.