Description
In the Linux kernel, the following vulnerability has been resolved:
mptcp: fix 'scheduling while atomic' in mptcp_pm_nl_append_new_local_addr
If multiple connection requests attempt to create an implicit mptcp
endpoint in parallel, more than one caller may end up in
mptcp_pm_nl_append_new_local_addr because none found the address in
local_addr_list during their call to mptcp_pm_nl_get_local_id. In this
case, the concurrent new_local_addr calls may delete the address entry
created by the previous caller. These deletes use synchronize_rcu, but
this is not permitted in some of the contexts where this function may be
called. During packet recv, the caller may be in a rcu read critical
section and have preemption disabled.
An example stack:
BUG: scheduling while atomic: swapper/2/0/0x00000302
Call Trace:
<IRQ>
dump_stack_lvl (lib/dump_stack.c:117 (discriminator 1))
dump_stack (lib/dump_stack.c:124)
__schedule_bug (kernel/sched/core.c:5943)
schedule_debug.constprop.0 (arch/x86/include/asm/preempt.h:33 kernel/sched/core.c:5970)
__schedule (arch/x86/include/asm/jump_label.h:27 include/linux/jump_label.h:207 kernel/sched/features.h:29 kernel/sched/core.c:6621)
schedule (arch/x86/include/asm/preempt.h:84 kernel/sched/core.c:6804 kernel/sched/core.c:6818)
schedule_timeout (kernel/time/timer.c:2160)
wait_for_completion (kernel/sched/completion.c:96 kernel/sched/completion.c:116 kernel/sched/completion.c:127 kernel/sched/completion.c:148)
__wait_rcu_gp (include/linux/rcupdate.h:311 kernel/rcu/update.c:444)
synchronize_rcu (kernel/rcu/tree.c:3609)
mptcp_pm_nl_append_new_local_addr (net/mptcp/pm_netlink.c:966 net/mptcp/pm_netlink.c:1061)
mptcp_pm_nl_get_local_id (net/mptcp/pm_netlink.c:1164)
mptcp_pm_get_local_id (net/mptcp/pm.c:420)
subflow_check_req (net/mptcp/subflow.c:98 net/mptcp/subflow.c:213)
subflow_v4_route_req (net/mptcp/subflow.c:305)
tcp_conn_request (net/ipv4/tcp_input.c:7216)
subflow_v4_conn_request (net/mptcp/subflow.c:651)
tcp_rcv_state_process (net/ipv4/tcp_input.c:6709)
tcp_v4_do_rcv (net/ipv4/tcp_ipv4.c:1934)
tcp_v4_rcv (net/ipv4/tcp_ipv4.c:2334)
ip_protocol_deliver_rcu (net/ipv4/ip_input.c:205 (discriminator 1))
ip_local_deliver_finish (include/linux/rcupdate.h:813 net/ipv4/ip_input.c:234)
ip_local_deliver (include/linux/netfilter.h:314 include/linux/netfilter.h:308 net/ipv4/ip_input.c:254)
ip_sublist_rcv_finish (include/net/dst.h:461 net/ipv4/ip_input.c:580)
ip_sublist_rcv (net/ipv4/ip_input.c:640)
ip_list_rcv (net/ipv4/ip_input.c:675)
__netif_receive_skb_list_core (net/core/dev.c:5583 net/core/dev.c:5631)
netif_receive_skb_list_internal (net/core/dev.c:5685 net/core/dev.c:5774)
napi_complete_done (include/linux/list.h:37 include/net/gro.h:449 include/net/gro.h:444 net/core/dev.c:6114)
igb_poll (drivers/net/ethernet/intel/igb/igb_main.c:8244) igb
__napi_poll (net/core/dev.c:6582)
net_rx_action (net/core/dev.c:6653 net/core/dev.c:6787)
handle_softirqs (kernel/softirq.c:553)
__irq_exit_rcu (kernel/softirq.c:588 kernel/softirq.c:427 kernel/softirq.c:636)
irq_exit_rcu (kernel/softirq.c:651)
common_interrupt (arch/x86/kernel/irq.c:247 (discriminator 14))
</IRQ>
This problem seems particularly prevalent if the user advertises an
endpoint that has a different external vs internal address. In the case
where the external address is advertised and multiple connections
already exist, multiple subflow SYNs arrive in parallel which tends to
trigger the race during creation of the first local_addr_list entries
which have the internal address instead.
Fix by skipping the replacement of an existing implicit local address if
called via mptcp_pm_nl_get_local_id.
Affected products
| Vendor | Product | Affected | Fixed |
|---|---|---|---|
| Linux | Linux | 5.18 | 6.1.131 |
Fixed in Linux distributions
Distributions backport fixes, so the version that fixes this vulnerability differs per release — upgrade to at least the version shown. From the distributions' security trackers and advisories.
Debian
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Debian 14 | linux | 6.12.19-1 | — |
| Debian 13 | linux | 6.12.19-1 | — |
| Debian 12 | linux | 6.1.133-1 | DSA-5900-1 |
| Debian 11 | linux-6.1 | 6.1.137-1~deb11u1 | DLA-4193-1 |
Ubuntu
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Ubuntu 24.04 LTS | linux | 6.8.0-60.63 | USN-7513-1 |
| Ubuntu 24.04 LTS | linux-aws | 6.8.0-1029.31 | USN-7513-1 |
| Ubuntu 24.04 LTS | linux-azure | 6.8.0-1029.34 | USN-7513-3 |
| Ubuntu 24.04 LTS | linux-azure-nvidia | 6.8.0-1016.17 | USN-7522-1 |
| Ubuntu 24.04 LTS | linux-gcp | 6.8.0-1030.32 | USN-7515-2 |
| Ubuntu 24.04 LTS | linux-gcp-6.11 +1 | 6.11.0-1015.15~24.04.1 | USN-7521-1 |
| Ubuntu 24.04 LTS | linux-gke | 6.8.0-1025.29 | USN-7515-1 |
| Ubuntu 24.04 LTS | linux-gkeop | 6.8.0-1012.14 | USN-7515-2 |
| Ubuntu 24.04 LTS | linux-hwe-6.11 | 6.11.0-26.26~24.04.1 | USN-7521-1 |
| Ubuntu 24.04 LTS | linux-ibm | 6.8.0-1026.26 | USN-7513-1 |
| Ubuntu 24.04 LTS | linux-lowlatency-hwe-6.11 | 6.11.0-1014.15~24.04.1 | USN-7521-3 |
| Ubuntu 24.04 LTS | linux-nvidia | 6.8.0-1028.31 | USN-7514-1 |
| Ubuntu 24.04 LTS | linux-nvidia-6.11 | 6.11.0-1010.10 | — |
| Ubuntu 24.04 LTS | linux-nvidia-lowlatency | 6.8.0-1028.31.1 | USN-7514-1 |
| Ubuntu 24.04 LTS | linux-nvidia-tegra | 6.8.0-1008.8 | — |
| Ubuntu 24.04 LTS | linux-oem-6.11 | 6.11.0-1022.22 | USN-7521-1 |
| Ubuntu 24.04 LTS | linux-oem-6.8 | 6.8.0-1028.28 | USN-7513-3 |
| Ubuntu 24.04 LTS | linux-oracle | 6.8.0-1026.27 | USN-7513-1 |
| Ubuntu 24.04 LTS | linux-raspi | 6.8.0-1028.32 | USN-7524-1 |
| Ubuntu 24.04 LTS | linux-realtime +1 | No fix yet | — |
| Ubuntu 24.04 LTS | linux-riscv +1 | 6.8.0-60.63.1 | USN-7513-1 |
| Ubuntu 24.04 LTS | linux-xilinx | 6.8.0-1017.18 | — |
| Ubuntu 22.04 LTS | linux-aws-6.8 | 6.8.0-1029.31~22.04.1 | USN-7513-1 |
| Ubuntu 22.04 LTS | linux-azure-6.8 | 6.8.0-1029.34~22.04.1 | USN-7513-3 |
| Ubuntu 22.04 LTS | linux-gcp-6.8 | 6.8.0-1030.32~22.04.1 | USN-7515-2 |
| Ubuntu 22.04 LTS | linux-hwe-6.8 | 6.8.0-60.63~22.04.1 | USN-7513-4 |
| Ubuntu 22.04 LTS | linux-ibm-6.8 | 6.8.0-1026.26~22.04.1 | — |
| Ubuntu 22.04 LTS | linux-lowlatency-hwe-6.8 | 6.8.0-60.63.1~22.04.1 | USN-7513-1 |
| Ubuntu 22.04 LTS | linux-nvidia-6.8 | 6.8.0-1028.31~22.04.1 | USN-7514-1 |
| Ubuntu 22.04 LTS | linux-oracle-6.8 | 6.8.0-1026.27~22.04.1 | USN-7513-5 |
| Ubuntu 22.04 LTS | linux-riscv +32 | No fix yet | — |
| Ubuntu 22.04 LTS | linux-riscv-6.8 | 6.8.0-62.65~22.04.1 | — |
| Ubuntu 20.04 LTS | linux-gke +28 | No fix yet | — |
| Ubuntu 18.04 LTS | linux-gcp +14 | No fix yet | — |
| Ubuntu 16.04 LTS | linux-hwe-edge | No fix yet | — |
Show 3 more (older releases, extended support, other products)Fewer releases
| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Ubuntu Pro Realtime 24.04 LTS | linux-raspi-realtime | 6.8.0-2023.24 | USN-7523-1 |
| Ubuntu Pro Realtime 24.04 LTS | linux-realtime | 6.8.1-1022.23 | USN-7513-2 |
| Ubuntu Pro Realtime 22.04 LTS | linux-realtime-6.8 | 6.8.1-1022.23~22.04.1 | — |
| Ubuntu Pro FIPS-updates 24.04 LTS | linux-fips | 6.8.0-78.78+fips1 | — |
SUSE
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| SLES 15 SP7 | kernel-64kb +6 | 6.4.0-150700.53.6.1 | SUSE-SU-2025:02307-1 |
| SLES 15 SP7 | kernel-azure +2 | 6.4.0-150700.20.6.1 | SUSE-SU-2025:02254-1 |
| SLES 15 SP7 | kernel-default-base | 6.4.0-150700.53.6.1.150700.17.6.1 | SUSE-SU-2025:02307-1 |
| SLES 15 SP6 | kernel-64kb +3 | 6.4.0-150600.23.60.4 | SUSE-SU-2025:02538-1 |
| SLES 15 SP6 | kernel-azure +2 | 6.4.0-150600.8.43.1 | SUSE-SU-2025:02249-1 |
| SLES 15 SP6 | kernel-coco +3 | 6.4.0-15061.28.coco15sp6.1 | SUSE-SU-2025:02923-1 |
| SLES 15 SP6 | kernel-default | 6.4.0-150600.23.60.5 | SUSE-SU-2025:02538-1 |
| SLES 15 SP6 | kernel-default-base | 6.4.0-150600.23.60.5.150600.12.26.4 | SUSE-SU-2025:02538-1 |
| SLES 15 SP6 | kernel-docs +1 | 6.4.0-150600.23.60.3 | SUSE-SU-2025:02538-1 |
Show 6 more (older releases, extended support, other products)Fewer releases
| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| SLE Micro 6.1 | kernel-rt +1 | 6.4.0-33.1 | SUSE-SU-2025:20421-1 |
| SLE Micro 6.0 | kernel-rt +1 | 6.4.0-33.1 | SUSE-SU-2025:20413-1 |
| SLE Live Patching 15 SP7 | kernel-default | 6.4.0-150700.53.6.1 | SUSE-SU-2025:02307-1 |
| SLE Live Patching 15 SP7 | kernel-livepatch-SLE15-SP7-RT_Update_2 | 1-150700.1.5.1 | SUSE-SU-2025:02333-1 |
| SLE Live Patching 15 SP7 | kernel-livepatch-SLE15-SP7_Update_2 | 1-150700.15.3.1 | SUSE-SU-2025:02307-1 |
| SLE Live Patching 15 SP6 | kernel-default | 6.4.0-150600.23.60.5 | SUSE-SU-2025:02538-1 |
| SLE Live Patching 15 SP6 | kernel-livepatch-SLE15-SP6-RT_Update_13 | 1-150600.1.5.1 | SUSE-SU-2025:02335-1 |
| SLE Live Patching 15 SP6 | kernel-livepatch-SLE15-SP6_Update_13 | 1-150600.13.6.4 | SUSE-SU-2025:02538-1 |
| SUSE Real Time Module 15 SP7 | kernel-rt +2 | 6.4.0-150700.7.8.1 | SUSE-SU-2025:02333-1 |
| SUSE Real Time Module 15 SP6 | kernel-rt +3 | 6.4.0-150600.10.44.1 | SUSE-SU-2025:02335-1 |
openSUSE
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| openSUSE Leap 15.6 | dtb-aarch64 +2 | 6.4.0-150600.23.60.3 | SUSE-SU-2025:02538-1 |
| openSUSE Leap 15.6 | kernel-64kb +5 | 6.4.0-150600.23.60.4 | SUSE-SU-2025:02538-1 |
| openSUSE Leap 15.6 | kernel-azure +2 | 6.4.0-150600.8.43.1 | SUSE-SU-2025:02249-1 |
| openSUSE Leap 15.6 | kernel-default | 6.4.0-150600.23.60.5 | SUSE-SU-2025:02538-1 |
| openSUSE Leap 15.6 | kernel-default-base | 6.4.0-150600.23.60.5.150600.12.26.4 | SUSE-SU-2025:02538-1 |
| openSUSE Leap 15.6 | kernel-obs-qa | 6.4.0-150600.23.60.2 | SUSE-SU-2025:02538-1 |
| openSUSE Leap 15.6 | kernel-rt +3 | 6.4.0-150600.10.44.1 | SUSE-SU-2025:02335-1 |
Amazon Linux
| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Amazon Linux 2023 | kernel-livepatch-6.1.131-143.221 | 1.0-0.amzn2023 | ALAS2023-2025-915 |
| Amazon Linux 2023 | perf +14 | 6.1.131-143.221.amzn2023 | ALAS2023-2025-915 |
Oracle Linux
| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Oracle Linux 9 | kernel-uek +34 | 6.12.0-101.33.4.3.el10uek | ELSA-2025-20530, ELSA-2025-20480 |
Advisories 32
- WID-SEC-2025-0683 Linux Kernel: Mehrere Schwachstellen BSI CERT-Bund (WID) · Nov 10, 2026
- SSA-457936 SSA-457936: Vulnerabilities in the additional GNU/Linux subsystem of the SIMATIC S7-1500 CPU 1518(F)-4 PN/DP MFP V3.1.7 Siemens ProductCERT · Nov 10, 2026
- USN-7524-1 linux-raspi vulnerabilities Ubuntu Security Notices (USN) · Nov 3, 2026
- USN-7523-1 linux-raspi-realtime vulnerabilities Ubuntu Security Notices (USN) · Nov 3, 2026
- USN-7521-1 linux, linux-azure, linux-azure-6.11, linux-gcp, linux-gcp-6.11, linux-hwe-6.11, linux-oem-6.11, linux-raspi, linux-realtime vulnerabilities Ubuntu Security Notices (USN) · Oct 30, 2026
- USN-7522-1 linux-azure-nvidia vulnerabilities Ubuntu Security Notices (USN) · Oct 30, 2026
- USN-7521-3 linux-lowlatency, linux-lowlatency-hwe-6.11, linux-oracle vulnerabilities Ubuntu Security Notices (USN) · Oct 30, 2026
- USN-7513-1 linux, linux-aws, linux-aws-6.8, linux-ibm, linux-lowlatency, linux-lowlatency-hwe-6.8, linux-oracle vulnerabilities Ubuntu Security Notices (USN) · Oct 30, 2026
- USN-7513-2 linux-realtime vulnerabilities Ubuntu Security Notices (USN) · Oct 30, 2026
- USN-7513-3 linux-azure, linux-azure-6.8, linux-oem-6.8 vulnerabilities Ubuntu Security Notices (USN) · Oct 30, 2026
- USN-7515-2 linux-gcp, linux-gcp-6.8, linux-gkeop vulnerabilities Ubuntu Security Notices (USN) · Oct 30, 2026
- USN-7514-1 linux-nvidia, linux-nvidia-6.8, linux-nvidia-lowlatency vulnerabilities Ubuntu Security Notices (USN) · Oct 30, 2026
- USN-7513-4 linux-hwe-6.8 vulnerabilities Ubuntu Security Notices (USN) · Oct 30, 2026
- USN-7513-5 linux-oracle-6.8 vulnerabilities Ubuntu Security Notices (USN) · Oct 30, 2026
- USN-7515-1 linux-gke vulnerabilities Ubuntu Security Notices (USN) · Oct 30, 2026
- ICSA-26-295-11 Siemens SIMATIC S7-1500 CPU 1518(F)-4 PN/DP MFP CISA ICS & IT advisories · Oct 22, 2026
- SSA-019113 SSA-019113: Vulnerabilities in the additional GNU/Linux subsystem of the SIMATIC S7-1500 CPU 1518(F)-4 PN/DP MFP V3.1.6 Siemens ProductCERT · Oct 13, 2026
- ICSA-26-209-04 Siemens SIMATIC S7-1500 CPU 1518(F)-4 PN/DP MFP CISA ICS & IT advisories · Jul 28, 2026
- SUSE-SU-2025:20421-1 Security update for the Linux Kernel SUSE / openSUSE Security Updates · Mar 23, 2026
- SUSE-SU-2025:20413-1 Security update for the Linux Kernel SUSE / openSUSE Security Updates · Mar 23, 2026
- SUSE-SU-2025:02335-1 Security update for the Linux Kernel SUSE / openSUSE Security Updates · Mar 23, 2026
- SUSE-SU-2025:02254-1 Security update for the Linux Kernel SUSE / openSUSE Security Updates · Mar 23, 2026
- SUSE-SU-2025:02333-1 Security update for the Linux Kernel SUSE / openSUSE Security Updates · Mar 23, 2026
- SUSE-SU-2025:02307-1 Security update for the Linux Kernel SUSE / openSUSE Security Updates · Mar 23, 2026
- DSA-5900-1 linux - security update Debian Security (DSA / DLA) · Mar 9, 2026
- DLA-4193-1 linux-6.1 - security update Debian Security (DSA / DLA) · Mar 9, 2026
- SUSE-SU-2025:02249-1 Security update for the Linux Kernel SUSE / openSUSE Security Updates · Feb 4, 2026
- SUSE-SU-2025:02923-1 Security update for the Linux Kernel SUSE / openSUSE Security Updates · Feb 4, 2026
- SUSE-SU-2025:02538-1 Security update for the Linux Kernel SUSE / openSUSE Security Updates · Feb 4, 2026
- ELSA-2025-20530 Important: Unbreakable Enterprise kernel security update (Oracle Linux 9) Oracle Linux Security Advisories (ELSA) · Aug 18, 2025
- ELSA-2025-20480 Important: Unbreakable Enterprise kernel security update (Oracle Linux 9) Oracle Linux Security Advisories (ELSA) · Jul 17, 2025
- ALAS2023-2025-915 Important: kernel security update (Amazon Linux 2023) Amazon Linux Security Center (ALAS) · Jun 19, 2025
References
- https://git.kernel.org/stable/c/f1404f368c40fc6a068dad72e4ee0824ee6a78ee
- https://git.kernel.org/stable/c/f3fcdb2de9fdbed9d8c6a8eb2c5fbd7d6f54a4d8
- https://git.kernel.org/stable/c/4b228dae3d2cc6d9dce167449cd8fa9f028e9376
- https://git.kernel.org/stable/c/125ccafe6dd062901b5a0c31ee9038740fc8859e
- https://git.kernel.org/stable/c/022bfe24aad8937705704ff2e414b100cf0f2e1a