CVE-2026-97941

HIGHPre-NVD 7.87.8—
EchelonGraph scoreHIGH confidence

Score 7.8 from GitHub Security Advisory (severity: HIGH) published 2026-09-25. A secondary CVSS source baseline 7.8; sources differ by 0.0.

Triggered by: GitHub Security Advisory CVSS
Sources: epss, ghsa, secondary
Trending — 3 sources updated this week
7.8EG
EchelonGraph verdictPlan mitigationSerious severity, but no confirmed exploitation yet.
  • High severity, but no confirmed exploitation yet
CISA-KEV: Not listedEPSS PROB: 0.2%CVSS: 7.8Exploit: None knownExposed services: Not assessed

No fix is confirmed yet — apply a workaround or compensating control (WAF / firewall / segmentation) and watch for the fix.

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

mm/slab: take n->list_lock in __slab_try_return_freelist() to avoid race

Commit ba7425312607 ("mm, slab: add an optimistic __slab_try_return_freelist()") incorrectly assumed that nobody has freed an object to the slab as long as slab->freelist is NULL and cmpxchg succeeds.

However, as reported by Hyunwoo Kim [1], other CPUs might have freed an object to the slab, insert the slab to the partial list, then allocated an object from the slab, and be in the middle of removing the slab from the list under n->list_lock.

Since __refill_objects_node() puts the slab back on pc.slabs outside n->list_lock, it might insert the slab into that list while the slab is concurrently being removed from n->partial. This led to a list corruption [1]:

list_add corruption. next->prev should be prev (ffff888100000248), but was dead000000000122. (next=ffffea000416e410). kernel BUG at lib/list_debug.c:29! Oops: invalid opcode: 0000 [#1] SMP NOPTI CPU: 1 UID: 65534 PID: 144 Comm: poc Not tainted 7.2.0-16172-gcf72cbb39da8-dirty #1 PREEMPT(lazy) RIP: 0010:__list_add_valid_or_report+0x80/0xd0 ... Call Trace: alloc_from_new_slab+0x183/0x300 ___slab_alloc+0x31c/0x890 __kmalloc_noprof+0x3d4/0x800 lsm_blob_alloc+0x2d/0x50 security_msg_msg_alloc+0x26/0x90 load_msg+0x1aa/0x210 do_msgsnd+0x91/0x800 do_syscall_64+0x109/0x5d0 entry_SYSCALL_64_after_hwframe+0x77/0x7f ... Kernel panic - not syncing: Fatal exception

This is a classic ABA problem where cmpxchg succeeds but the state has changed since __refill_objects_node() took the freelist from the slab.

As Vlastimil Babka mentioned [2], it should be rare to return more than one slab (due to the racy read of slab->counters in get_partial_node_bulk()). Therefore, instead of introducing additional complexity, acquire and release n->list_lock twice in the worst case.

Return the slab directly to the partial list and hold n->list_lock across the cmpxchg and add_partial(). This is similar to the initial version of commit ba7425312607 [3]. This is enough to avoid the race as the list manipulation is serialized by n->list_lock. While at it, bring back unlikely() hint now that the condition is unlikely.

CVSS v3
7.8
EG Score
7.8HIGHhigh confidence
EG Risk
40
EG Risk 40/100CISA SSVC

EG Risk is EchelonGraph's 0–100 priority score: it fuses intrinsic severity with real-world exploitation and automatability so you can rank equal-severity CVEs and fix the most dangerous first. Higher = act sooner. Distinct from the 0–10 EG Score (severity).

How it’s computed
Severity78% × 45%
Exploitation0% × 40%
Automatability30% × 15%
CISA SSVC: Track at low or medium mission impact; Track or Attend at high (mission-essential systems).
Action: No fix is confirmed yet. Restrict network exposure of the affected system or apply the vendor's mitigation within your standard update timelines at low or medium mission impact and sooner than that at high, and watch the vendor's advisory for the fix.
EPSS PROB
0.2%
EPSS %ILE
3rd
KEV
Not listed

CISA SSVCTrack at low or medium mission impact; Track or Attend at high (mission-essential systems).

No fix is confirmed yet. Restrict network exposure of the affected system or apply the vendor's mitigation within your standard update timelines at low or medium mission impact and sooner than that at high, and watch the vendor's advisory for the fix.

Exploitation none (no KEV listing, exploit record or EPSS ≥ 50%) · Automatable unknown (not published for this CVE) · Technical impact partial (CVSS below 9.0). Mission impact is CISA's Mission & Well-being decision point, and only you can judge it: high means the affected system is essential to your organisation's mission, or its compromise could cause irreversible harm to people. CISA's decision table

Published

September 25, 2026

Last Modified

September 25, 2026

Advisory Details (2)

Auto-updated Sep 25, 2026
No patch confirmed yet.
generic

mm/slab: take n->list_lock in __slab_try_return_freelist() to avoid race - kernel/git/stable/linux.git - Linux kernel stable tree

https://git.kernel.org/stable/c/4a724bcf5d703e18957397914d79156fa2cf1174
generic

mm/slab: take n->list_lock in __slab_try_return_freelist() to avoid race - kernel/git/stable/linux.git - Linux kernel stable tree

https://git.kernel.org/stable/c/570a6aaf6b52c6ec098f4811cdb52b1496f13d15

Vendor Advisories for CVE-2026-97941(1)

These vendors published their own advisory mentioning this CVE — often with vendor-specific remediation steps + affected product lists not in NVD.

Affected Packages

(1 across 1 ecosystem)
Debian:14(1)
PackageVulnerable rangeFix by version rangeDependents
linux6.12.100-1 ... 7.2~rc7-1~exp1 (179 versions)
  • every version up to 7.2.7-1: fixed in 7.2.7-1
—

Data Freshness Timeline

(refreshed 29× in last 7d / 47× in last 30d)

Each row is a source pipeline that fetched or updated this CVE on that date, with what changed. For example, "NVD update" means NVD published or revised its analysis for this CVE; "MITRE cvelistV5" means we ingested or refreshed it from the CNA feed. Most recent first.

  1. 2026-10-05 09:36 UTCEG score recompute
  2. 2026-10-05 09:36 UTCGHSA enrichment
  3. 2026-10-04 23:23 UTCEPSS rescore
  4. 2026-10-04 21:19 UTCGHSA enrichment
  5. 2026-10-04 09:02 UTCGHSA enrichment
  6. 2026-10-03 20:44 UTCEG score recompute
  7. 2026-10-03 20:44 UTCGHSA enrichment
  8. 2026-10-03 14:26 UTCEPSS rescore
  9. 2026-10-03 08:27 UTCGHSA enrichment
  10. 2026-10-02 20:05 UTCEG score recompute
  11. 2026-10-02 20:05 UTCGHSA enrichment
  12. 2026-10-02 17:57 UTCEPSS rescore
  13. 2026-10-02 07:46 UTCEG score recompute
  14. 2026-10-02 07:45 UTCGHSA enrichment
  15. 2026-10-01 19:51 UTCEPSS rescore
  16. 2026-10-01 19:24 UTCGHSA enrichment
  17. 2026-10-01 07:06 UTCGHSA enrichment
  18. 2026-09-30 18:49 UTCEG score recompute
  19. 2026-09-30 18:49 UTCGHSA enrichment
  20. 2026-09-30 15:04 UTCEPSS rescore
  21. 2026-09-30 06:32 UTCGHSA enrichment
  22. 2026-09-29 18:14 UTCEG score recompute
  23. 2026-09-29 18:14 UTCGHSA enrichment
  24. 2026-09-29 05:27 UTCEG score recompute
  25. 2026-09-29 05:27 UTCGHSA enrichment
Show 22 more
  1. 2026-09-28 17:10 UTCEG score recompute
  2. 2026-09-28 17:09 UTCGHSA enrichment
  3. 2026-09-28 13:52 UTCEPSS rescore
  4. 2026-09-28 13:52 UTCEPSS rescore
  5. 2026-09-28 04:52 UTCGHSA enrichment
  6. 2026-09-27 16:34 UTCEG score recompute
  7. 2026-09-27 16:34 UTCGHSA enrichment
  8. 2026-09-27 13:49 UTCEPSS rescore
  9. 2026-09-27 04:17 UTCGHSA enrichment
  10. 2026-09-26 16:00 UTCEG score recompute
  11. 2026-09-26 15:59 UTCGHSA enrichment
  12. 2026-09-26 15:59 UTCEPSS rescore
  13. 2026-09-26 03:41 UTCEG score recompute
  14. 2026-09-26 03:41 UTCGHSA enrichment
  15. 2026-09-25 15:24 UTCEG score recompute
  16. 2026-09-25 15:24 UTCGHSA enrichment
  17. 2026-09-25 14:52 UTCEG score recompute▲ 7.80
  18. 2026-09-25 14:52 UTCGHSA enrichment
  19. 2026-09-25 14:49 UTCMITRE cvelistV5CVSS v3 → 7.8 · severity → HIGH
  20. 2026-09-25 11:30 UTCNVD update
  21. 2026-09-25 10:34 UTCEG score recompute
  22. 2026-09-25 10:27 UTCMITRE cvelistV5first tracked

Frequently asked(5)

What is CVE-2026-97941?
CVE-2026-97941 is a high vulnerability published on September 25, 2026. In the Linux kernel, the following vulnerability has been resolved: mm/slab: take n->listlock in slabtryreturnfreelist() to avoid race Commit ba7425312607 ("mm, slab: add an optimistic slabtryreturn_freelist()") incorrectly assumed that nobody has freed an object to the slab as long as…
When was CVE-2026-97941 disclosed?
CVE-2026-97941 was first published on September 25, 2026. EchelonGraph re-ingests CVE updates from NVD on a 2-hour cycle, so this page reflects the latest published state.
Is CVE-2026-97941 actively exploited?
CVE-2026-97941 is not currently on CISA's Known Exploited Vulnerabilities catalog. FIRST EPSS estimates a 0.2% probability of exploitation in the next 30 days (3rd percentile of EPSS-scored CVEs).
What is the CVSS score of CVE-2026-97941?
CVE-2026-97941 has a CVSS base score of 7.8 (a secondary CVSS source that NVD displays; NVD's own analysis pending).
How do I remediate CVE-2026-97941?
No fix for CVE-2026-97941 is confirmed yet. Until one is published, restrict network exposure of the affected system or apply the vendor's mitigation — for example, keep it off the internet or limit it to trusted networks — and watch the vendor's advisory for the fix. The vendor advisories EchelonGraph has for CVE-2026-97941 are linked in the Vendor Advisories panel on this page.

Dependency Blast Radius

See which npm, PyPI, Go, and Maven packages are affected by CVE-2026-97941

Explore →

Is Your Infrastructure Affected by CVE-2026-97941?

EchelonGraph automatically scans your cloud infrastructure and maps CVE exposure using blast radius analysis.