CVE-2026-98069

HIGHPre-NVD 8.18.1—
EchelonGraph scoreHIGH confidence

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

Triggered by: GitHub Security Advisory CVSS
Sources: epss, ghsa, secondary
Trending — 4 sources updated this week
8.1EG
EchelonGraph verdictPlan mitigationSerious severity, but no confirmed exploitation yet.
  • High severity, but no confirmed exploitation yet
CISA-KEV: Not listedEPSS PROB: 0.6%CVSS: 8.1Exploit: 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:

net/rds: acquire the fastpath locks in rds_conn_shutdown()

rds_conn_shutdown() quiesces the transmit and receive-refill paths by waiting for RDS_IN_XMIT and RDS_RECV_REFILL to be sampled clear, and then runs the transport shutdown and rds_conn_path_reset(). Sampling the bits clear is not the same as owning them: the moment after the wait_event() returns, rds_send_xmit() can re-acquire RDS_IN_XMIT (or rds_ib_recv_refill() can re-acquire RDS_RECV_REFILL) and run concurrently with the teardown.

The sender does recheck the connection state after taking the lock, but that recheck is a classic store-buffering pattern: teardown writes the state and reads the bit while the sender writes the bit and reads the state. acquire_in_xmit() is only an acquire operation, so on weakly ordered architectures both sides can miss each other's write, and the transmit path then runs while the transport zeroes its rings (e.g. rds_ib_ring_init()) and rds_send_path_reset() rewrites the transmit state under it.

Oracle UEK fixed the same class of crashes - a 14-year tail of BUG_ON()s in rds_ib_sub_signaled(), unexpected op-codes and NULL dereferences in rds_ib_send_cqe_handler() during failover testing - by making the teardown path *acquire* the fastpath bit locks instead of testing them ("rds: Make sure transmit path and connection tear-down does not run concurrently"). Ownership of a single word is decided by RMW atomicity, so no cross-variable ordering is needed.

Do the same here: take both locks before calling the transport shutdown, hold them across rds_conn_path_reset(), and release them explicitly with a wake-up afterwards. Both are released with clear_bit_unlock(), so that the ring re-initialization done by the transport shutdown and the transmit state rewritten by rds_send_path_reset() are ordered before either bit is seen clear by the next acquire_in_xmit() or acquire_refill().

The fastpath users of these bits - rds_send_xmit() and rds_ib_recv_refill() - are trylock style and back off while teardown owns the locks, so no new lock dependency is introduced for them. rds_tcp_reset_callbacks() is different: since the previous patch it acquires RDS_IN_XMIT as well, and it blocks doing so, so its wait now spans the teardown instead of at most one send batch. That waiter runs from rds_tcp_accept_one() on the single-threaded krdsd workqueue and holds rds_tcp_accept_lock and t_conn_path_lock while it waits, so a duelling SYN accepted while its path is being torn down parks accept processing for the duration of the teardown - for TCP bounded by the (up to 5 s) drain loop in rds_tcp_conn_path_shutdown(). An IB path's drain in rds_ib_conn_path_shutdown() has no round cap, but no blocking waiter either: rds_tcp_reset_callbacks() is the only blocking acquirer of these bits and waits only on its own TCP path, and the fastpaths are trylock-and-back-off on both transports, so a long IB drain lengthens only that path's own quiesce. The window is narrow: the accept-side state check has to pass before the teardown moves the path to RDS_CONN_DISCONNECTING.

Because krdsd is a single global workqueue, everything else queued there - accept processing for other connections and network namespaces, and the flush_workqueue(rds_wq) in rds_tcp_listen_stop() during namespace teardown - waits behind the parked accept worker for that time. It cannot deadlock, although the waits do point at each other: the teardown blocks until the bit's holder releases it, and the holder may be that krdsd accept worker. The holder finishes without needing anything the teardown owns: the sync cancels rds_tcp_reset_callbacks() issues target cp_send_w and cp_recv_w on the path's ordered cp_wq, whose only execution slot is occupied by the blocked cp_down_w itself, so they are pending at most and cancel without flushing - a reliance on cp_wq being ordered that is now noted next to those cancels (on ---truncated---

CVSS v3
8.1
EG Score
8.1HIGHhigh confidence
EG Risk
41
EG Risk 41/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
Severity81% × 45%
Exploitation1% × 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.6%
EPSS %ILE
45th
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

October 3, 2026

Advisory Details (4)

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

net/rds: acquire the fastpath locks in rds_conn_shutdown() - kernel/git/stable/linux.git - Linux kernel stable tree

https://git.kernel.org/stable/c/813f3582ac7ae9f60f917937d54660e0952d5f2d
generic

net/rds: acquire the fastpath locks in rds_conn_shutdown() - kernel/git/stable/linux.git - Linux kernel stable tree

https://git.kernel.org/stable/c/1fe627e5db5c3f53a9f9f9c8a66671755d306955
generic

net/rds: acquire the fastpath locks in rds_conn_shutdown() - kernel/git/stable/linux.git - Linux kernel stable tree

https://git.kernel.org/stable/c/900e96c9749a06833801f60c393aa1d405ea226c
generic

net/rds: acquire the fastpath locks in rds_conn_shutdown() - kernel/git/stable/linux.git - Linux kernel stable tree

https://git.kernel.org/stable/c/7febb113795d5de5b690b208f4b0e64a5fad1201

Vendor Advisories for CVE-2026-98069(2)

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

Affected Packages

(4 across 3 ecosystems)
Debian:12(2)
PackageVulnerable rangeFix by version rangeDependents
linux6.1.106-1 ... 7.2~rc7-1~exp1 (360 versions)
  • every version on: no fix on record
—
linux-6.126.12.100-1~deb12u1, 6.12.101-1~deb12u1, 6.12.107-1~deb12u1
  • every version up to 6.12.111-1~deb12u1: fixed in 6.12.111-1~deb12u1
—
Debian:13(1)
PackageVulnerable rangeFix by version rangeDependents
linux6.12.100-1 ... 6.12.96-1 (35 versions)
  • every version up to 6.12.111-1: fixed in 6.12.111-1
—
Debian:14(1)
PackageVulnerable rangeFix by version rangeDependents
linux6.12.100-1 ... 7.2~rc7-1~exp1 (180 versions)
  • every version up to 7.2.7-1: fixed in 7.2.7-1
—

Data Freshness Timeline

(refreshed 49× in last 7d / 67× 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 11:12 UTCEG score recompute
  2. 2026-10-05 11:12 UTCVendor advisory
  3. 2026-10-05 11:11 UTCGHSA enrichment
  4. 2026-10-04 23:23 UTCEPSS rescore
  5. 2026-10-04 23:16 UTCVendor advisory
  6. 2026-10-04 23:16 UTCGHSA enrichment
  7. 2026-10-04 11:19 UTCVendor advisory
  8. 2026-10-04 11:19 UTCGHSA enrichment
  9. 2026-10-03 23:23 UTCEG score recompute
  10. 2026-10-03 23:23 UTCVendor advisory
  11. 2026-10-03 23:23 UTCGHSA enrichment
  12. 2026-10-03 14:26 UTCEPSS rescore
  13. 2026-10-03 11:27 UTCEG score recompute
  14. 2026-10-03 11:27 UTCVendor advisory
  15. 2026-10-03 11:27 UTCGHSA enrichment
  16. 2026-10-03 11:12 UTCEG score recompute
  17. 2026-10-03 11:12 UTCVendor advisory
  18. 2026-10-03 11:12 UTCGHSA enrichment
  19. 2026-10-03 02:31 UTCEG score recompute
  20. 2026-10-03 02:31 UTCVendor advisory
  21. 2026-10-03 02:31 UTCGHSA enrichment
  22. 2026-10-02 17:57 UTCEPSS rescore
  23. 2026-10-02 14:35 UTCVendor advisory
  24. 2026-10-02 14:35 UTCGHSA enrichment
  25. 2026-10-02 02:23 UTCEG score recompute
Show 42 more
  1. 2026-10-02 02:23 UTCVendor advisory
  2. 2026-10-02 02:23 UTCGHSA enrichment
  3. 2026-10-01 19:51 UTCEPSS rescore
  4. 2026-10-01 14:26 UTCVendor advisory
  5. 2026-10-01 14:26 UTCGHSA enrichment
  6. 2026-10-01 02:30 UTCEG score recompute
  7. 2026-10-01 02:30 UTCVendor advisory
  8. 2026-10-01 02:30 UTCGHSA enrichment
  9. 2026-09-30 15:04 UTCEPSS rescore
  10. 2026-09-30 14:35 UTCVendor advisory
  11. 2026-09-30 14:35 UTCGHSA enrichment
  12. 2026-09-30 02:52 UTCEG score recompute
  13. 2026-09-30 02:52 UTCVendor advisory
  14. 2026-09-30 02:52 UTCGHSA enrichment
  15. 2026-09-29 14:56 UTCVendor advisory
  16. 2026-09-29 14:56 UTCGHSA enrichment
  17. 2026-09-29 03:00 UTCEG score recompute
  18. 2026-09-29 03:00 UTCVendor advisory
  19. 2026-09-29 03:00 UTCGHSA enrichment
  20. 2026-09-28 15:03 UTCEG score recompute
  21. 2026-09-28 15:03 UTCVendor advisory
  22. 2026-09-28 15:03 UTCGHSA enrichment
  23. 2026-09-28 13:52 UTCEPSS rescore
  24. 2026-09-28 13:52 UTCEPSS rescore
  25. 2026-09-28 03:06 UTCGHSA enrichment
  26. 2026-09-27 15:09 UTCEG score recompute
  27. 2026-09-27 15:09 UTCGHSA enrichment
  28. 2026-09-27 13:49 UTCEPSS rescore
  29. 2026-09-27 03:12 UTCEG score recompute
  30. 2026-09-27 03:12 UTCGHSA enrichment
  31. 2026-09-26 15:59 UTCEPSS rescore
  32. 2026-09-26 15:15 UTCGHSA enrichment
  33. 2026-09-26 03:19 UTCEG score recompute
  34. 2026-09-26 03:19 UTCGHSA enrichment
  35. 2026-09-25 15:23 UTCEG score recompute
  36. 2026-09-25 15:23 UTCGHSA enrichment
  37. 2026-09-25 14:52 UTCEG score recompute▲ 8.10
  38. 2026-09-25 14:51 UTCGHSA enrichment
  39. 2026-09-25 14:49 UTCMITRE cvelistV5CVSS v3 → 8.1 · severity → HIGH
  40. 2026-09-25 11:30 UTCNVD update
  41. 2026-09-25 10:27 UTCEG score recompute
  42. 2026-09-25 10:27 UTCMITRE cvelistV5first tracked

Frequently asked(5)

What is CVE-2026-98069?
CVE-2026-98069 is a high vulnerability published on September 25, 2026. In the Linux kernel, the following vulnerability has been resolved: net/rds: acquire the fastpath locks in rdsconnshutdown() rdsconnshutdown() quiesces the transmit and receive-refill paths by waiting for RDSINXMIT and RDSRECVREFILL to be sampled clear, and then runs the transport shutdown and…
When was CVE-2026-98069 disclosed?
CVE-2026-98069 was first published on September 25, 2026, with the most recent update on October 3, 2026. EchelonGraph re-ingests CVE updates from NVD on a 2-hour cycle, so this page reflects the latest published state.
Is CVE-2026-98069 actively exploited?
CVE-2026-98069 is not currently on CISA's Known Exploited Vulnerabilities catalog. FIRST EPSS estimates a 0.6% probability of exploitation in the next 30 days (45th percentile of EPSS-scored CVEs).
What is the CVSS score of CVE-2026-98069?
CVE-2026-98069 has a CVSS base score of 8.1 (a secondary CVSS source that NVD displays; NVD's own analysis pending).
How do I remediate CVE-2026-98069?
No fix for CVE-2026-98069 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-98069 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-98069

Explore →

Is Your Infrastructure Affected by CVE-2026-98069?

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