CVE-2026-74631
kernel: net: smc: fix splice entry lifetime imbalance in smc_rx_splice
Severity
ImportantRed Hat Product Security
CVSS 3.1
Review impact separately from score.
Published · August 22, 2026
Updated · October 29, 2026
Description
A flaw was found in the Linux kernel's smc_rx_splice function within the net: smc component. This vulnerability arises from an imbalance in the lifetime management of splice entries, where page references are not properly handled before being passed to splice_to_pipe(). This can lead to a reference count underflow, resulting in a use-after-free condition. A successful exploitation of this flaw could potentially lead to arbitrary code execution or a denial of service.
Statement
A use-after-free can occur in the SMC splice receive path because smc_rx_splice() passed pages to splice_to_pipe() before taking the page and socket references that cover each splice entry lifetime. If splice_to_pipe() drops entries that were not queued, smc_rx_spd_release() can release state before matching references exist, while queued entries are released later through pipe buffer callbacks. This can underflow page refcounts and leave stale page lifetime state, creating a kernel memory safety issue rather than a simple crash-only bug. For the CVSS the PR:L is used because a local process is typically required to create or use an SMC socket and call splice(), even if no administrative privileges are required. Impact is at least local denial of service via kernel crash and in worst case may allow confidentiality or integrity impact due to use-after-free memory corruption.
CVSS score applicability
The CVSS score(s) listed for this vulnerability do not reflect the associated product's status, and are included for informational purposes to better understand the severity of this vulnerability.
Mitigation
To mitigate this issue, prevent module smc from being loaded. Please see https://access.redhat.com/solutions/41278 for how to blacklist a kernel module to prevent it from loading automatically.
CVSS / CWE
CVSS 3.1 · 7.4CVSS:3.1/AV:L/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H
CWE-911 · Improper Update of Reference Count