CVE Catalog

CVE-2026-97524

HighCVSS 7.5
Published: Updated: Translated: NVD NIST

Summary

In the Linux kernel, the MPTCP receive path can, under unlucky error conditions, recursively call mptcp_data_ready() via a state change and then try to hold the data lock again. The fix breaks this recursion by adding a new flag, exiting early in subflow_state_change(), and flushing the RX queue at reset time.

Risk Assessment

Recursive calls and re-locking can lead to deadlock or incorrect data processing on a dying subflow, causing MPTCP connection instability.

Recommendation

Update the Linux kernel to a version containing the fix that breaks the recursion in the MPTCP receive path and flushes the RX queue on subflow reset.

Other vulnerabilities in Linux kernel

See all
Original NVD description (English source)

In the Linux kernel, the following vulnerability has been resolved: mptcp: avoid unneeded actions on subflow reset Once in a blue moon, the mptcp receive path can recursively call mptcp_data_ready() via state change under unlucky error conditions, and then try to hold the data lock again. Break the recursion loop explicitly checking for the exceptional condition. Add a new flag instead of using an existing one like 'closing', to exit early in subflow_state_change(), and explicitly flush the RX queue at reset time. This avoids unneeded processing to check for available data -- calling get_mapping_status() and more on a dying subflow -- but also in error reporting and worker scheduling. Note that we must consume the currently peeked skb before invoking mptcp_dss_corruption to avoid consuming it again after the eventual reset has freed it.

Vulnerability data from NVD (NIST) · CISA KEV · EPSS