Skip to main content
VulnerabilityPublished Updated

CVE-2026-98056: Linux kernel · nvme: remove stale namespaces by NSID range during scan

Affects Linux kernelSource CVE Database V5

0

Not known to be exploited · CVSS 7.5 High · fixed in f56b2bb4b18b017b056c4c17c66b2c4c54bf6ee4 : patch Linux kernel soon.

Data as of 26 Oct 2026, 17:30 UTC

CVSS 3.1 base score
7.5High
How severe the flaw is on the 0–10 CVSS scale.
EPSS
0.6% chance of exploitation in 30 days – higher than 49% of CVEsExploit Prediction Scoring System: the likelihood attackers will use this flaw soon.
Patch
Available – fixed in f56b2bb4b18b017b056c4c17c66b2c4c54bf6ee4, e6a94b2c4c80a38002346ce915a9b9a3d478a3e6, c84ad7407fb16b92d9b7a649cc304a9cf3757897 +2
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H

Exploitation evidence

  1. Disclosed: evidence found.

    CVE published 25 Sep 2026

  2. Detectable: no evidence on record.

    No public nuclei template indexed

  3. Weaponised: no evidence on record.

    No public exploit code indexed in Metasploit or Exploit-DB

  4. Exploited in the wild: no evidence on record.

    Not in CISA KEV and no source reports exploitation

  5. Observed by OffSeq Mirage: no evidence on record.

    No attack traffic recorded by OffSeq Mirage sensors

A missing step is not evidence of safety. Sources: cve.org (opens in a new tab), the Metasploit, Exploit-DB and nuclei-templates index as of 26 Oct 2026.

What to do

Upgrade to a fixed release listed under Affected software.

Affected software

ProductAffectedFixed in
LinuxLinuxAffected
  • ≥ 540c801c65eb58e05e0ca38b6fd644a83d7e2b33, < f56b2bb4b18b017b056c4c17c66b2c4c54bf6ee4
Fixed in
  • f56b2bb4b18b017b056c4c17c66b2c4c54bf6ee4
LinuxLinuxAffected
  • ≥ 540c801c65eb58e05e0ca38b6fd644a83d7e2b33, < e6a94b2c4c80a38002346ce915a9b9a3d478a3e6
Fixed in
  • e6a94b2c4c80a38002346ce915a9b9a3d478a3e6
LinuxLinuxAffected
  • ≥ 540c801c65eb58e05e0ca38b6fd644a83d7e2b33, < c84ad7407fb16b92d9b7a649cc304a9cf3757897
Fixed in
  • c84ad7407fb16b92d9b7a649cc304a9cf3757897
LinuxLinuxAffected
  • ≥ 540c801c65eb58e05e0ca38b6fd644a83d7e2b33, < 52200fc41a79da430ccf7c126ed837535b087ea2
Fixed in
  • 52200fc41a79da430ccf7c126ed837535b087ea2
LinuxLinuxAffected
  • ≥ 540c801c65eb58e05e0ca38b6fd644a83d7e2b33, < 4ed7f3d7d435bf5b63da2814dc9270f5ba896011
Fixed in
  • 4ed7f3d7d435bf5b63da2814dc9270f5ba896011
LinuxLinuxAffected
  • =4.5
Fixed in–

Description

In the Linux kernel, the following vulnerability has been resolved: nvme: remove stale namespaces by NSID range during scan nvme_scan_ns_list() drops the stale namespaces in each gap in the reported NSID list one NSID at a time. Every iteration calls nvme_find_get_ns() to look the namespace up and removes it if it is present. The loop runs once per NSID in the gap rather than once per namespace actually present. NSIDs are 32-bit, so a target with a sparse NSID space can make a single gap spin the loop billions of times with nothing to remove. watchdog: BUG: soft lockup - CPU#4 stuck for 26s! Workqueue: nvme-wq nvme_scan_work [nvme_core] RIP: 0010:__srcu_read_unlock+0xb/0x20 Call Trace: nvme_find_get_ns+0x7d/0xb0 [nvme_core] nvme_scan_ns_list+0xe8/0x280 [nvme_core] nvme_scan_work+0x18a/0x280 [nvme_core] process_one_work+0x197/0x380 worker_thread+0x2fe/0x410 kthread+0xe0/0x100 Rename nvme_remove_invalid_namespaces() to nvme_remove_nsid_range() and give it an open (start, end) NSID range. ctrl->namespaces is sorted by NSID, so the whole gap is dropped in a single walk that stops once end is reached. This bounds the work by the namespaces that are present instead of by the size of the gap.

References

Community reviews

Loading reviews…