Skip to main content

Linux CVE-2026-23419

| EUVDEUVD-2026-18636 HIGH
Improper Locking (CWE-667)
2026-04-03 Linux GHSA-x244-gjj6-jc73
7.5
CVSS 3.1 · NVD
Share

Severity by source

NVD PRIMARY
7.5 HIGH
AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
SUSE
HIGH
qualitative
Red Hat
5.5 MEDIUM
qualitative

Primary rating from NVD.

CVSS VectorNVD

CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Attack Vector
Network
Attack Complexity
Low
Privileges Required
None
User Interaction
None
Scope
Unchanged
Confidentiality
None
Integrity
None
Availability
High

Lifecycle Timeline

8
Re-analysis Queued
Apr 27, 2026 - 14:22 vuln.today
cvss_changed
Severity Changed
Apr 27, 2026 - 14:22 NVD
MEDIUM HIGH
CVSS changed
Apr 27, 2026 - 14:22 NVD
5.5 (MEDIUM) 7.5 (HIGH)
CVSS changed
Apr 24, 2026 - 15:22 NVD
5.5 (MEDIUM)
Patch available
Apr 16, 2026 - 05:29 EUVD
6a877ececd6daa002a9a0002cd0fbca6592a9244,6ce948fa54599f369ff7fe8b793a6aae4b0762b2,8babb271403378ba6836f6c8599c5313d0e2355d
EUVD ID Assigned
Apr 03, 2026 - 13:45 euvd
EUVD-2026-18636
Analysis Generated
Apr 03, 2026 - 13:45 vuln.today
CVE Published
Apr 03, 2026 - 13:24 nvd
N/A

DescriptionCVE.org

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

net/rds: Fix circular locking dependency in rds_tcp_tune

syzbot reported a circular locking dependency in rds_tcp_tune() where sk_net_refcnt_upgrade() is called while holding the socket lock:

============ WARNING: possible circular locking dependency detected ============ kworker/u10:8/15040 is trying to acquire lock: ffffffff8e9aaf80 (fs_reclaim){+.+.}-{0:0}, at: __kmalloc_cache_noprof+0x4b/0x6f0

but task is already holding lock: ffff88805a3c1ce0 (k-sk_lock-AF_INET6){+.+.}-{0:0}, at: rds_tcp_tune+0xd7/0x930

The issue occurs because sk_net_refcnt_upgrade() performs memory allocation (via get_net_track() -> ref_tracker_alloc()) while the socket lock is held, creating a circular dependency with fs_reclaim.

Fix this by moving sk_net_refcnt_upgrade() outside the socket lock critical section. This is safe because the fields modified by the sk_net_refcnt_upgrade() call (sk_net_refcnt, ns_tracker) are not accessed by any concurrent code path at this point.

v2:

  • Corrected fixes tag
  • check patch line wrap nits
  • ai commentary nits

AnalysisAI

Linux kernel RDS TCP subsystem resolves circular locking dependency in rds_tcp_tune() function where socket lock contention with fs_reclaim memory allocation creates deadlock potential. The vulnerability affects all Linux kernel versions with the vulnerable code path in net/rds/tcp.c; the fix relocates sk_net_refcnt_upgrade() outside the socket lock critical section to eliminate the circular lock dependency without compromising synchronization semantics.

Technical ContextAI

The vulnerability exists in the Linux kernel's Reliable Datagram Sockets (RDS) TCP implementation, specifically in the rds_tcp_tune() function that handles socket tuning operations. The root cause is a classic circular locking dependency (CWE-833) where the function holds a socket lock (k-sk_lock-AF_INET6) while calling sk_net_refcnt_upgrade(), which internally invokes get_net_track() and ref_tracker_alloc() that perform kernel memory allocation. This memory allocation path triggers fs_reclaim lock acquisition, creating a lock ordering cycle: socket lock → memory allocation → fs_reclaim, while other code paths may reverse this ordering. The fix recognizes that sk_net_refcnt and ns_tracker fields modified by sk_net_refcnt_upgrade() are not accessed concurrently at that point, allowing safe relocation of this call outside the socket lock's critical section.

RemediationAI

Apply the kernel patch from the referenced stable commits. The fix is available in upstream Linux via commit 8babb271403378ba6836f6c8599c5313d0e2355d and has been backported to stable kernel branches via commits 8519e6883a942e510f33a0e634e27bcc3a844a40, 6ce948fa54599f369ff7fe8b793a6aae4b0762b2, 026bbaeeab9e04534ee58882b6447300629b42f6, and 6a877ececd6daa002a9a0002cd0fbca6592a9244 (accessible via https://git.kernel.org/stable/). Affected Linux distributions should update to a kernel version that includes one of these commits. No workaround is available short of disabling RDS TCP support or avoiding heavy socket tuning operations under memory pressure. Systems experiencing kernel deadlocks related to rds_tcp_tune should immediately prioritize kernel update after testing in a non-production environment.

Vendor StatusVendor

SUSE

Severity: High
Product Status
Container suse/sl-micro/6.0/base-os-container:2.1.3-7.127 Container suse/sl-micro/6.1/base-os-container:2.2.1-5.114 Affected
Container suse/sl-micro/6.0/kvm-os-container:2.1.3-6.144 Container suse/sl-micro/6.1/kvm-os-container:2.2.1-5.116 Affected
Container suse/sl-micro/6.0/rt-os-container:2.1.3-7.161 Container suse/sl-micro/6.1/rt-os-container:2.2.1-5.107 Affected
Image SLES-CHOST-BYOS-GDC Image SLES-CHOST-BYOS-SAP-CCloud Image SLES-GCE-3P Affected
SUSE Linux Micro 6.0 Fixed

Share

CVE-2026-23419 vulnerability details – vuln.today

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy