Upstream information
Description
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---
SUSE information
Overall state of this security issue: Pending
This issue is currently rated as having important severity.
| CVSS detail | CNA (NVD) | Linux Kernel CNA | SUSE |
|---|---|---|---|
| Base Score | 8.1 | 8.1 | 7 |
| Vector | CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H | CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H | CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H |
| Attack Vector | Network | Network | Local |
| Attack Complexity | High | High | High |
| Privileges Required | None | None | Low |
| User Interaction | None | None | None |
| Scope | Unchanged | Unchanged | Unchanged |
| Confidentiality Impact | High | High | High |
| Integrity Impact | High | High | High |
| Availability Impact | High | High | High |
| CVSSv3 Version | 3.1 | 3.1 | 3.1 |
| CVSS detail | SUSE |
|---|---|
| Base Score | 7.3 |
| Vector | CVSS:4.0/AV:L/AC:H/AT:N/PR:L/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N |
| Attack Vector | Local |
| Attack Complexity | High |
| Attack Requirements | None |
| Privileges Required | Low |
| User Interaction | None |
| Vulnerable System Confidentiality Impact | High |
| Vulnerable System Integrity Impact | High |
| Vulnerable System Availability Impact | High |
| Subsequent System Confidentiality Impact | None |
| Subsequent System Integrity Impact | None |
| Subsequent System Availability Impact | None |
| CVSSv4 Version | 4.0 |
Note from the SUSE Security Team on the kernel-default package
SUSE will no longer fix all CVEs in the Linux Kernel anymore, but declare some bug classes as won't fix. Please refer to TID 21496 for more details. SUSE Bugzilla entries: 1283863 [NEW], 1283864 [NEW] No SUSE Security Announcements cross referenced.Status of this issue by product and package
Please note that this evaluation state might be work in progress, incomplete or outdated. Also information for service packs in the LTSS phase is only included for issues meeting the LTSS criteria. If in doubt, feel free to contact us for clarification. The updates are grouped by state of their lifecycle. SUSE product lifecycles are documented on the lifecycle page.
| Product(s) | Source package | State |
|---|---|---|
| Products under general support and receiving all security fixes. | ||
| SUSE Linux Enterprise Desktop 15 SP7 | kernel-default | Affected |
| SUSE Linux Enterprise Desktop 15 SP7 | kernel-source | Affected |
| SUSE Linux Enterprise High Availability Extension 15 SP7 | kernel-default | Affected |
| SUSE Linux Enterprise High Availability Extension 15 SP7 | kernel-source | Affected |
| SUSE Linux Enterprise High Availability Extension 16.0 | kernel-default | Affected |
| SUSE Linux Enterprise High Availability Extension 16.0 | kernel-source | Affected |
| SUSE Linux Enterprise High Availability Extension 16.1 | kernel-default | Affected |
| SUSE Linux Enterprise High Availability Extension 16.1 | kernel-source | Affected |
| SUSE Linux Enterprise Micro 5.3 | kernel-default | Affected |
| SUSE Linux Enterprise Micro 5.3 | kernel-rt | Affected |
| SUSE Linux Enterprise Micro 5.3 | kernel-source | Affected |
| SUSE Linux Enterprise Micro 5.3 | kernel-source-rt | Affected |
| SUSE Linux Enterprise Micro 5.4 | kernel-default | Affected |
| SUSE Linux Enterprise Micro 5.4 | kernel-rt | Affected |
| SUSE Linux Enterprise Micro 5.4 | kernel-source | Affected |
| SUSE Linux Enterprise Micro 5.4 | kernel-source-rt | Affected |
| SUSE Linux Enterprise Micro 5.5 | kernel-default | Affected |
| SUSE Linux Enterprise Micro 5.5 | kernel-source | Affected |
| SUSE Linux Enterprise Micro 5.5 | kernel-source-rt | Affected |
| SUSE Linux Enterprise Module for Basesystem 15 SP7 | kernel-default | Affected |
| SUSE Linux Enterprise Module for Basesystem 15 SP7 | kernel-source | Affected |
| SUSE Linux Enterprise Module for Development Tools 15 SP7 | kernel-default | Affected |
| SUSE Linux Enterprise Module for Development Tools 15 SP7 | kernel-source | Affected |
| SUSE Linux Enterprise Real Time 15 SP7 | kernel-source-rt | Affected |
| SUSE Linux Enterprise Server 15 SP7 | kernel-default | Affected |
| SUSE Linux Enterprise Server 15 SP7 | kernel-source | Affected |
| SUSE Linux Enterprise Server 16.0 | kernel-default | Affected |
| SUSE Linux Enterprise Server 16.0 | kernel-source | Affected |
| SUSE Linux Enterprise Server 16.1 | kernel-default | Affected |
| SUSE Linux Enterprise Server 16.1 | kernel-source | Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP7 | kernel-default | Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP7 | kernel-source | Affected |
| SUSE Linux Enterprise Server for SAP applications 16.0 | kernel-default | Affected |
| SUSE Linux Enterprise Server for SAP applications 16.0 | kernel-source | Affected |
| SUSE Linux Enterprise Server for SAP applications 16.1 | kernel-default | Affected |
| SUSE Linux Enterprise Server for SAP applications 16.1 | kernel-source | Affected |
| SUSE Linux Micro 6.0 | kernel-default | Affected |
| SUSE Linux Micro 6.0 | kernel-source | Affected |
| SUSE Linux Micro 6.0 | kernel-source-rt | Affected |
| SUSE Linux Micro 6.1 | kernel-default | Affected |
| SUSE Linux Micro 6.1 | kernel-source | Affected |
| SUSE Linux Micro 6.1 | kernel-source-rt | Affected |
| SUSE Linux Micro 6.2 | kernel-default | Affected |
| SUSE Linux Micro 6.2 | kernel-source | Affected |
| SUSE Linux Micro Extras 6.0 | kernel-default | Affected |
| SUSE Linux Micro Extras 6.0 | kernel-source | Affected |
| SUSE Linux Micro Extras 6.0 | kernel-source-rt | Affected |
| SUSE Linux Micro Extras 6.1 | kernel-default | Affected |
| SUSE Linux Micro Extras 6.1 | kernel-source | Affected |
| SUSE Real Time Module 15 SP7 | kernel-source-rt | Affected |
| openSUSE Leap 16.0 | kernel-source | Affected |
| Products under Long Term Service Pack support and receiving important and critical security fixes. | ||
| SUSE Linux Enterprise High Performance Computing 12 SP5 | kernel-source | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP4-LTSS | kernel-default | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP4-LTSS | kernel-source | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP5 | kernel-source | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP5-LTSS | kernel-default | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP5-LTSS | kernel-source | Affected |
| SUSE Linux Enterprise Module for Basesystem 15 SP4 | kernel-source | Affected |
| SUSE Linux Enterprise Module for Basesystem 15 SP5 | kernel-source | Affected |
| SUSE Linux Enterprise Module for Basesystem 15 SP6 | kernel-source | Affected |
| SUSE Linux Enterprise Module for Development Tools 15 SP4 | kernel-source | Affected |
| SUSE Linux Enterprise Module for Development Tools 15 SP5 | kernel-source | Affected |
| SUSE Linux Enterprise Module for Development Tools 15 SP6 | kernel-source | Affected |
| SUSE Linux Enterprise Server 11 SP4 LTSS EXTREME CORE | kernel-default | Affected |
| SUSE Linux Enterprise Server 11 SP4 LTSS EXTREME CORE | kernel-source | Affected |
| SUSE Linux Enterprise Server 12 SP5 | kernel-source | Affected |
| SUSE Linux Enterprise Server 12 SP5-LTSS | kernel-default | Affected |
| SUSE Linux Enterprise Server 12 SP5-LTSS | kernel-source | Affected |
| SUSE Linux Enterprise Server 15 SP4 | kernel-source | Affected |
| SUSE Linux Enterprise Server 15 SP4-LTSS | kernel-default | Affected |
| SUSE Linux Enterprise Server 15 SP4-LTSS | kernel-source | Affected |
| SUSE Linux Enterprise Server 15 SP5 | kernel-source | Affected |
| SUSE Linux Enterprise Server 15 SP5-LTSS | kernel-default | Affected |
| SUSE Linux Enterprise Server 15 SP5-LTSS | kernel-source | Affected |
| SUSE Linux Enterprise Server 15 SP6 | kernel-source | Affected |
| SUSE Linux Enterprise Server 15 SP6-LTSS | kernel-default | Affected |
| SUSE Linux Enterprise Server 15 SP6-LTSS | kernel-source | Affected |
| SUSE Linux Enterprise Server LTSS Extended Security 12 SP5 | kernel-default | Affected |
| SUSE Linux Enterprise Server LTSS Extended Security 12 SP5 | kernel-source | Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP4 | kernel-default | Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP4 | kernel-source | Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP5 | kernel-default | Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP5 | kernel-source | Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP6 | kernel-default | Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP6 | kernel-source | Affected |
| Products past their end of life and not receiving proactive updates anymore. | ||
| SUSE CaaS Platform 4.0 | kernel-source | Affected |
| SUSE Enterprise Storage 6 | kernel-source | Affected |
| SUSE Enterprise Storage 7 | kernel-source | Affected |
| SUSE Enterprise Storage 7.1 | kernel-source | Affected |
| SUSE Linux Enterprise Desktop 11 SP4 | kernel-source | Affected |
| SUSE Linux Enterprise Desktop 15 SP1 | kernel-source | Affected |
| SUSE Linux Enterprise Desktop 15 SP2 | kernel-source | Affected |
| SUSE Linux Enterprise Desktop 15 SP3 | kernel-source | Affected |
| SUSE Linux Enterprise Desktop 15 SP4 | kernel-source | Affected |
| SUSE Linux Enterprise Desktop 15 SP5 | kernel-source | Affected |
| SUSE Linux Enterprise Desktop 15 SP6 | kernel-source | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP1 | kernel-source | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP1-ESPOS | kernel-source | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP1-LTSS | kernel-source | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP2 | kernel-source | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP2-ESPOS | kernel-source | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP2-LTSS | kernel-source | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP3 | kernel-source | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP3-ESPOS | kernel-source | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP3-LTSS | kernel-source | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP4 | kernel-source | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP4-ESPOS | kernel-source | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP5-ESPOS | kernel-source | Affected |
| SUSE Linux Enterprise Micro 5.0 | kernel-default | Affected |
| SUSE Linux Enterprise Micro 5.1 | kernel-default | Affected |
| SUSE Linux Enterprise Micro 5.2 | kernel-default | Affected |
| SUSE Linux Enterprise Micro 5.2 | kernel-source | Affected |
| SUSE Linux Enterprise Module for Basesystem 15 SP1 | kernel-source | Affected |
| SUSE Linux Enterprise Module for Basesystem 15 SP2 | kernel-source | Affected |
| SUSE Linux Enterprise Module for Basesystem 15 SP3 | kernel-source | Affected |
| SUSE Linux Enterprise Module for Development Tools 15 SP1 | kernel-source | Affected |
| SUSE Linux Enterprise Module for Development Tools 15 SP2 | kernel-source | Affected |
| SUSE Linux Enterprise Module for Development Tools 15 SP3 | kernel-source | Affected |
| SUSE Linux Enterprise Real Time 15 SP2 | kernel-source | Affected |
| SUSE Linux Enterprise Real Time 15 SP3 | kernel-source | Affected |
| SUSE Linux Enterprise Real Time 15 SP4 | kernel-source | Affected |
| SUSE Linux Enterprise Real Time 15 SP4 | kernel-source-rt | Affected |
| SUSE Linux Enterprise Real Time 15 SP5 | kernel-source-rt | Affected |
| SUSE Linux Enterprise Server 11 SP4 | kernel-source | Affected |
| SUSE Linux Enterprise Server 11 SP4-LTSS | kernel-source | Affected |
| SUSE Linux Enterprise Server 15 SP1 | kernel-source | Affected |
| SUSE Linux Enterprise Server 15 SP1-BCL | kernel-source | Affected |
| SUSE Linux Enterprise Server 15 SP1-LTSS | kernel-default | Affected |
| SUSE Linux Enterprise Server 15 SP1-LTSS | kernel-source | Affected |
| SUSE Linux Enterprise Server 15 SP2 | kernel-source | Affected |
| SUSE Linux Enterprise Server 15 SP2-BCL | kernel-source | Affected |
| SUSE Linux Enterprise Server 15 SP2-LTSS | kernel-default | Affected |
| SUSE Linux Enterprise Server 15 SP2-LTSS | kernel-source | Affected |
| SUSE Linux Enterprise Server 15 SP3 | kernel-source | Affected |
| SUSE Linux Enterprise Server 15 SP3-BCL | kernel-source | Affected |
| SUSE Linux Enterprise Server 15 SP3-LTSS | kernel-default | Affected |
| SUSE Linux Enterprise Server 15 SP3-LTSS | kernel-source | Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP1 | kernel-source | Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP2 | kernel-source | Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP3 | kernel-source | Affected |
| SUSE Manager Proxy 4.0 | kernel-source | Affected |
| SUSE Manager Proxy 4.1 | kernel-source | Affected |
| SUSE Manager Proxy 4.2 | kernel-source | Affected |
| SUSE Manager Proxy 4.3 | kernel-source | Affected |
| SUSE Manager Proxy LTS 4.3 | kernel-source | Affected |
| SUSE Manager Retail Branch Server 4.0 | kernel-source | Affected |
| SUSE Manager Retail Branch Server 4.1 | kernel-source | Affected |
| SUSE Manager Retail Branch Server 4.2 | kernel-source | Affected |
| SUSE Manager Retail Branch Server 4.3 | kernel-source | Affected |
| SUSE Manager Retail Branch Server LTS 4.3 | kernel-source | Affected |
| SUSE Manager Server 4.0 | kernel-source | Affected |
| SUSE Manager Server 4.1 | kernel-source | Affected |
| SUSE Manager Server 4.2 | kernel-source | Affected |
| SUSE Manager Server 4.3 | kernel-source | Affected |
| SUSE Manager Server LTS 4.3 | kernel-source | Affected |
| SUSE Real Time Module 15 SP4 | kernel-source-rt | Affected |
| SUSE Real Time Module 15 SP5 | kernel-source-rt | Affected |
| openSUSE Leap 15.3 | kernel-source | Affected |
| openSUSE Leap 15.4 | kernel-source | Affected |
| openSUSE Leap 15.4 | kernel-source-rt | Affected |
| openSUSE Leap 15.5 | kernel-source | Affected |
| openSUSE Leap 15.5 | kernel-source-rt | Affected |
| openSUSE Leap 15.6 | kernel-source | Affected |
| Products at an unknown state of their lifecycle. | ||
| SUSE Linux Enterprise Server for NVIDIA 16.1 | kernel-source | Affected |
SUSE Timeline for this CVE
CVE page created: Thu Oct 1 14:52:24 2026CVE page last modified: Fri Oct 2 15:52:29 2026