Description
In the Linux kernel, the following vulnerability has been resolved:
bpf: fix ktls panic with sockmap
[ 2172.936997] ------------[ cut here ]------------
[ 2172.936999] kernel BUG at lib/iov_iter.c:629!
......
[ 2172.944996] PKRU: 55555554
[ 2172.945155] Call Trace:
[ 2172.945299] <TASK>
[ 2172.945428] ? die+0x36/0x90
[ 2172.945601] ? do_trap+0xdd/0x100
[ 2172.945795] ? iov_iter_revert+0x178/0x180
[ 2172.946031] ? iov_iter_revert+0x178/0x180
[ 2172.946267] ? do_error_trap+0x7d/0x110
[ 2172.946499] ? iov_iter_revert+0x178/0x180
[ 2172.946736] ? exc_invalid_op+0x50/0x70
[ 2172.946961] ? iov_iter_revert+0x178/0x180
[ 2172.947197] ? asm_exc_invalid_op+0x1a/0x20
[ 2172.947446] ? iov_iter_revert+0x178/0x180
[ 2172.947683] ? iov_iter_revert+0x5c/0x180
[ 2172.947913] tls_sw_sendmsg_locked.isra.0+0x794/0x840
[ 2172.948206] tls_sw_sendmsg+0x52/0x80
[ 2172.948420] ? inet_sendmsg+0x1f/0x70
[ 2172.948634] __sys_sendto+0x1cd/0x200
[ 2172.948848] ? find_held_lock+0x2b/0x80
[ 2172.949072] ? syscall_trace_enter+0x140/0x270
[ 2172.949330] ? __lock_release.isra.0+0x5e/0x170
[ 2172.949595] ? find_held_lock+0x2b/0x80
[ 2172.949817] ? syscall_trace_enter+0x140/0x270
[ 2172.950211] ? lockdep_hardirqs_on_prepare+0xda/0x190
[ 2172.950632] ? ktime_get_coarse_real_ts64+0xc2/0xd0
[ 2172.951036] __x64_sys_sendto+0x24/0x30
[ 2172.951382] do_syscall_64+0x90/0x170
......
After calling bpf_exec_tx_verdict(), the size of msg_pl->sg may increase,
e.g., when the BPF program executes bpf_msg_push_data().
If the BPF program sets cork_bytes and sg.size is smaller than cork_bytes,
it will return -ENOSPC and attempt to roll back to the non-zero copy
logic. However, during rollback, msg->msg_iter is reset, but since
msg_pl->sg.size has been increased, subsequent executions will exceed the
actual size of msg_iter.
'''
iov_iter_revert(&msg->msg_iter, msg_pl->sg.size - orig_size);
'''
The changes in this commit are based on the following considerations:
1. When cork_bytes is set, rolling back to non-zero copy logic is
pointless and can directly go to zero-copy logic.
2. We can not calculate the correct number of bytes to revert msg_iter.
Assume the original data is "abcdefgh" (8 bytes), and after 3 pushes
by the BPF program, it becomes 11-byte data: "abc?de?fgh?".
Then, we set cork_bytes to 6, which means the first 6 bytes have been
processed, and the remaining 5 bytes "?fgh?" will be cached until the
length meets the cork_bytes requirement.
However, some data in "?fgh?" is not within 'sg->msg_iter'
(but in msg_pl instead), especially the data "?" we pushed.
So it doesn't seem as simple as just reverting through an offset of
msg_iter.
3. For non-TLS sockets in tcp_bpf_sendmsg, when a "cork" situation occurs,
the user-space send() doesn't return an error, and the returned length is
the same as the input length parameter, even if some data is cached.
Additionally, I saw that the current non-zero-copy logic for handling
corking is written as:
'''
line 1177
else if (ret != -EAGAIN) {
if (ret == -ENOSPC)
ret = 0;
goto send_end;
'''
So it's ok to just return 'copied' without error when a "cork" situation
occurs.
Affected products
| Vendor | Product | Affected | Fixed |
|---|---|---|---|
| Linux | Linux | 4.20 | 6.1.142 |
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.35-1 | — |
| Debian 13 | linux | 6.12.35-1 | — |
| Debian 12 | linux | 6.1.147-1 | DSA-5973-1 |
| Debian 11 | linux-6.1 | 6.1.153-1~deb11u1 | DLA-4328-1 |
Ubuntu
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Ubuntu Nvidia-BlueField 24.04 LTS | linux-bluefield | 6.8.0-1016.20 | — |
| Ubuntu Nvidia-BlueField 22.04 LTS | linux-bluefield | No fix yet | — |
| Ubuntu 25.10 | linux-azure-fde | No fix yet | — |
| Ubuntu 25.04 | linux-azure | 6.14.0-1012.12 | USN-7770-1 |
| Ubuntu 25.04 | linux-raspi | 6.14.0-1014.14 | USN-7789-2 |
| Ubuntu 24.04 LTS | linux | 6.8.0-100.100 | USN-8028-1 |
| Ubuntu 24.04 LTS | linux-aws +1 | 6.8.0-1046.49 | USN-8028-5 |
| Ubuntu 24.04 LTS | linux-aws-6.14 +1 | 6.14.0-1013.13~24.04.1 | USN-7789-1, USN-7769-3 |
| Ubuntu 24.04 LTS | linux-azure | 6.8.0-1046.52 | USN-8074-1 |
| Ubuntu 24.04 LTS | linux-azure-fde | 6.8.0-1046.53 | — |
| Ubuntu 24.04 LTS | linux-azure-nvidia | 6.8.0-1039.42 | — |
| Ubuntu 24.04 LTS | linux-azure-nvidia-6.14 | 6.14.0-1007.7 | — |
| Ubuntu 24.04 LTS | linux-gcp | 6.8.0-1047.50 | USN-8031-3 |
| Ubuntu 24.04 LTS | linux-gcp-6.14 | 6.14.0-1016.17~24.04.1 | USN-7769-1 |
| Ubuntu 24.04 LTS | linux-gke | 6.8.0-1043.48 | USN-8031-3 |
| Ubuntu 24.04 LTS | linux-gkeop | 6.8.0-1030.33 | USN-8028-5 |
| Ubuntu 24.04 LTS | linux-hwe-6.14 | 6.14.0-32.32~24.04.1 | USN-7769-3 |
| Ubuntu 24.04 LTS | linux-ibm | 6.8.0-1044.44 | USN-8028-8 |
| Ubuntu 24.04 LTS | linux-intel +10 | No fix yet | — |
| Ubuntu 24.04 LTS | linux-lowlatency | 6.8.0-100.100.1 | USN-8052-1 |
| Ubuntu 24.04 LTS | linux-nvidia-lowlatency | 6.8.0-1046.49.1 | USN-8028-7 |
| Ubuntu 24.04 LTS | linux-nvidia-tegra | 6.8.0-1020.20 | — |
| Ubuntu 24.04 LTS | linux-oem-6.14 | 6.14.0-1012.12 | USN-7771-1 |
| Ubuntu 24.04 LTS | linux-oracle | 6.8.0-1043.44 | USN-8028-5 |
| Ubuntu 24.04 LTS | linux-raspi | 6.8.0-1047.51 | USN-8028-1 |
| Ubuntu 24.04 LTS | linux-riscv-6.14 | 6.14.0-32.32.1~24.04.1 | — |
| Ubuntu 24.04 LTS | linux-xilinx | 6.8.0-1023.24 | USN-8052-2 |
Show 13 more (older releases, extended support, other products)Fewer releases
| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Ubuntu 22.04 LTS | linux +49 | No fix yet | — |
| Ubuntu 22.04 LTS | linux-aws-6.8 +1 | 6.8.0-1046.49~22.04.1 | USN-8028-5 |
| Ubuntu 22.04 LTS | linux-azure-6.8 | 6.8.0-1051.57~22.04.1 | USN-8126-1 |
| Ubuntu 22.04 LTS | linux-azure-fde-6.8 | 6.8.0-1046.53~22.04.1 | — |
| Ubuntu 22.04 LTS | linux-gcp-6.8 | 6.8.0-1047.50~22.04.2 | USN-8031-1 |
| Ubuntu 22.04 LTS | linux-hwe-6.8 +1 | 6.8.0-100.100~22.04.1 | USN-8028-6 |
| Ubuntu 22.04 LTS | linux-ibm-6.8 | 6.8.0-1044.44~22.04.1 | USN-8028-8 |
| Ubuntu 22.04 LTS | linux-lowlatency-hwe-6.8 | 6.8.0-100.100.1~22.04.1 | USN-8028-6 |
| Ubuntu 22.04 LTS | linux-oracle-6.8 | 6.8.0-1043.44~22.04.1 | USN-8028-5 |
| 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 | — |
| Ubuntu Pro Realtime 24.04 LTS | linux-raspi-realtime | 6.8.0-2037.38 | USN-8028-3 |
| Ubuntu Pro Realtime 24.04 LTS | linux-realtime | 6.8.1-1041.42 | USN-8028-3 |
| Ubuntu Pro Realtime 24.04 LTS | linux-realtime-6.14 | 6.14.0-1012.12~24.04.1 | USN-7769-2 |
| Ubuntu Pro Realtime 22.04 LTS | linux-realtime +1 | No fix yet | — |
| Ubuntu Pro Realtime 22.04 LTS | linux-realtime-6.8 | 6.8.1-1041.42~22.04.1 | USN-8028-2 |
| Ubuntu Pro FIPS 20.04 LTS | linux-fips +3 | No fix yet | — |
| Ubuntu Pro FIPS-updates 24.04 LTS | linux-aws-fips | 6.8.0-1046.49+fips1 | USN-8028-4 |
| Ubuntu Pro FIPS-updates 24.04 LTS | linux-azure-fips | 6.8.0-1046.52+fips1 | USN-8074-2 |
| Ubuntu Pro FIPS-updates 24.04 LTS | linux-fips | 6.8.0-100.100+fips1 | USN-8028-4 |
| Ubuntu Pro FIPS-updates 24.04 LTS | linux-gcp-fips | 6.8.0-1047.50+fips1 | USN-8031-2 |
| Ubuntu Pro FIPS-updates 22.04 LTS | linux-fips +3 | No fix yet | — |
| Ubuntu Pro FIPS-updates 20.04 LTS | linux-fips +3 | No fix yet | — |
| Ubuntu Pro FIPS-preview 22.04 LTS | linux-fips +3 | No fix yet | — |
| Ubuntu Pro 20.04 LTS | linux +21 | No fix yet | — |
| Ubuntu Pro 18.04 LTS | linux-aws-5.4 +6 | No fix yet | — |
Red Hat
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| RHEL 10 | rv +76 | 6.12.0-211.7.1.el10_2 | RHSA-2026:18134 |
| RHEL 9 | rv +75 | 5.14.0-687.5.1.el9_8 | RHSA-2026:18587 |
AlmaLinux
Errata ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| AlmaLinux 10 | rv +74 | 6.12.0-211.7.1.el10_2 | ALSA-2026:18134 |
| AlmaLinux 9 | rv +73 | 5.14.0-687.5.1.el9_8 | ALSA-2026:18587 |
SUSE
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| SLES 15 SP7 | kernel-64kb +5 | 6.4.0-150700.53.11.1 | SUSE-SU-2025:02997-1 |
| SLES 15 SP7 | kernel-azure +2 | 6.4.0-150700.20.11.1 | SUSE-SU-2025:03011-1 |
| SLES 15 SP7 | kernel-default-base | 6.4.0-150700.53.11.1.150700.17.9.4 | SUSE-SU-2025:02997-1 |
| SLES 15 SP7 | kernel-docs | 6.4.0-150700.53.11.3 | SUSE-SU-2025:02997-1 |
| SLES 15 SP6 | kernel-64kb +6 | 6.4.0-150600.23.65.1 | SUSE-SU-2025:02996-1 |
| SLES 15 SP6 | kernel-azure +2 | 6.4.0-150600.8.48.1 | SUSE-SU-2025:02969-1 |
| SLES 15 SP6 | kernel-coco +3 | 6.4.0-15061.28.coco15sp6.1 | SUSE-SU-2025:02923-1 |
| SLES 15 SP6 | kernel-default-base | 6.4.0-150600.23.65.1.150600.12.28.4 | SUSE-SU-2025:02996-1 |
| SLES 12 SP5 | kernel-syms +2 | 4.12.14-122.269.1 | SUSE-SU-2025:02846-1 |
Show 7 more (older releases, extended support, other products)Fewer releases
| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| SLE Micro 6.1 | kernel-default-base | 6.4.0-32.1.21.10 | SUSE-SU-2025:20602-1 |
| SLE Micro 6.1 | kernel-rt +1 | 6.4.0-35.1 | SUSE-SU-2025:20601-1 |
| SLE Micro 6.1 | kernel-source +2 | 6.4.0-32.1 | SUSE-SU-2025:20602-1 |
| SLE Micro 6.0 | kernel-default-base | 6.4.0-32.1.21.10 | SUSE-SU-2025:20586-1 |
| SLE Micro 6.0 | kernel-rt +1 | 6.4.0-35.1 | SUSE-SU-2025:20577-1 |
| SLE Micro 6.0 | kernel-source +2 | 6.4.0-32.1 | SUSE-SU-2025:20586-1 |
| SLE Live Patching 15 SP7 | kernel-default | 6.4.0-150700.53.11.1 | SUSE-SU-2025:02997-1 |
| SLE Live Patching 15 SP7 | kernel-livepatch-SLE15-SP7-RT_Update_3 | 1-150700.1.5.1 | SUSE-SU-2025:02853-1 |
| SLE Live Patching 15 SP7 | kernel-livepatch-SLE15-SP7_Update_3 | 1-150700.15.3.4 | SUSE-SU-2025:02997-1 |
| SLE Live Patching 15 SP6 | kernel-default | 6.4.0-150600.23.65.1 | SUSE-SU-2025:02996-1 |
| SLE Live Patching 15 SP6 | kernel-livepatch-SLE15-SP6-RT_Update_14 | 1-150600.1.5.1 | SUSE-SU-2025:03023-1 |
| SLE Live Patching 15 SP6 | kernel-livepatch-SLE15-SP6_Update_14 | 1-150600.13.3.4 | SUSE-SU-2025:02996-1 |
| SLE Live Patching 12 SP5 | kernel-default | 4.12.14-122.269.1 | SUSE-SU-2025:02846-1 |
| SLE Live Patching 12 SP5 | kgraft-patch-SLE12-SP5_Update_71 | 1-8.3.1 | SUSE-SU-2025:02846-1 |
| SUSE Real Time Module 15 SP7 | kernel-rt +2 | 6.4.0-150700.7.13.1 | SUSE-SU-2025:02853-1 |
| SUSE Real Time Module 15 SP6 | kernel-rt +3 | 6.4.0-150600.10.49.1 | SUSE-SU-2025:03023-1 |
openSUSE
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| openSUSE Leap 15.6 | dtb-aarch64 +10 | 6.4.0-150600.23.65.1 | SUSE-SU-2025:02996-1 |
| openSUSE Leap 15.6 | kernel-azure +2 | 6.4.0-150600.8.48.1 | SUSE-SU-2025:02969-1 |
| openSUSE Leap 15.6 | kernel-default-base | 6.4.0-150600.23.65.1.150600.12.28.4 | SUSE-SU-2025:02996-1 |
| openSUSE Leap 15.6 | kernel-rt +3 | 6.4.0-150600.10.49.1 | SUSE-SU-2025:03023-1 |
Amazon Linux
| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Amazon Linux 2023 | bpftool +14 | 6.12.35-55.103.amzn2023 | ALAS2023-2025-1111, ALAS2023-2025-1080 |
| Amazon Linux 2023 | kernel-livepatch-6.1.144-170.251 | 1:1.0-0.amzn2023 | ALAS2023-2025-1111 |
| Amazon Linux 2023 | kernel-livepatch-6.12.35-55.103 | 1.0-0.amzn2023 | ALAS2023-2025-1080 |
| Amazon Linux 2023 | perf +5 | 1:6.1.144-170.251.amzn2023 | ALAS2023-2025-1111 |
Azure Linux
| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Azure Linux 3 | kernel | 6.6.96.1-1 | — |
| Azure Linux 2 (CBL-Mariner) | kernel | No fix yet | — |
Oracle Linux
| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Oracle Linux 10 | rv +29 | 6.12.0-211.34.1.el10_2 | ELSA-2026-18134 |
| Oracle Linux 9 | kernel-uek +34 | 6.12.0-103.40.4.1.el10uek | ELSA-2025-20551 |
| Oracle Linux 9 | rv +28 | 5.14.0-687.17.1.el9_8 | ELSA-2026-18587 |
Advisories 47
- WID-SEC-2025-1452 Linux Kernel: Mehrere Schwachstellen BSI CERT-Bund (WID) · Nov 11, 2026
- USN-8028-5 linux-aws, linux-aws-6.8, linux-gkeop, linux-nvidia, linux-nvidia-6.8, linux-oracle, linux-oracle-6.8 vulnerabilities Ubuntu Security Notices (USN) · Nov 3, 2026
- USN-8126-1 linux-azure-6.8 vulnerabilities Ubuntu Security Notices (USN) · Nov 3, 2026
- USN-8028-8 linux-ibm, linux-ibm-6.8 vulnerabilities Ubuntu Security Notices (USN) · Nov 3, 2026
- USN-8028-6 linux-hwe-6.8, linux-lowlatency-hwe-6.8 vulnerabilities Ubuntu Security Notices (USN) · Nov 3, 2026
- USN-8052-1 linux-lowlatency vulnerabilities Ubuntu Security Notices (USN) · Nov 3, 2026
- USN-8052-2 linux-xilinx vulnerabilities Ubuntu Security Notices (USN) · Nov 3, 2026
- USN-8074-1 linux-azure vulnerabilities Ubuntu Security Notices (USN) · Nov 3, 2026
- USN-8074-2 linux-azure-fips vulnerabilities Ubuntu Security Notices (USN) · Nov 3, 2026
- USN-8031-3 linux-gcp, linux-gke vulnerabilities Ubuntu Security Notices (USN) · Nov 3, 2026
- USN-8028-1 linux, linux-raspi vulnerabilities Ubuntu Security Notices (USN) · Nov 3, 2026
- USN-8028-4 linux-aws-fips, linux-fips vulnerabilities Ubuntu Security Notices (USN) · Nov 3, 2026
- USN-8028-3 linux-realtime, linux-raspi-realtime vulnerabilities Ubuntu Security Notices (USN) · Nov 3, 2026
- USN-8028-7 linux-nvidia-lowlatency vulnerabilities Ubuntu Security Notices (USN) · Nov 3, 2026
- USN-8028-2 linux-realtime-6.8 vulnerabilities Ubuntu Security Notices (USN) · Nov 3, 2026
- USN-8031-2 linux-gcp-fips vulnerabilities Ubuntu Security Notices (USN) · Nov 3, 2026
- USN-8031-1 linux-gcp-6.8 vulnerabilities Ubuntu Security Notices (USN) · Nov 3, 2026
- USN-7789-1 linux-oracle-6.14 vulnerabilities Ubuntu Security Notices (USN) · Nov 3, 2026
- USN-7769-2 linux-realtime-6.14 vulnerabilities Ubuntu Security Notices (USN) · Nov 3, 2026
- USN-7771-1 linux-oem-6.14 vulnerabilities Ubuntu Security Notices (USN) · Nov 3, 2026
- USN-7769-1 linux, linux-aws, linux-gcp, linux-gcp-6.14, linux-oracle, linux-realtime vulnerabilities Ubuntu Security Notices (USN) · Nov 3, 2026
- USN-7769-3 linux-aws-6.14, linux-hwe-6.14 vulnerabilities Ubuntu Security Notices (USN) · Nov 3, 2026
- ALSA-2026:18134 Moderate: kernel security update AlmaLinux Security Advisories · Oct 29, 2026
- ALSA-2026:18587 Moderate: kernel security update AlmaLinux Security Advisories · Oct 29, 2026
- RHSA-2026:18587 Red Hat Security Advisory: kernel security update Red Hat Security Advisories (RHSA) · Oct 16, 2026
- RHSA-2026:18134 Red Hat Security Advisory: kernel security update Red Hat Security Advisories (RHSA) · Oct 16, 2026
- ELSA-2026-18134 Moderate: kernel security update (Oracle Linux 10) Oracle Linux Security Advisories (ELSA) · Jul 20, 2026
- ELSA-2026-18587 Moderate: kernel security update (Oracle Linux 9) Oracle Linux Security Advisories (ELSA) · Jun 29, 2026
- SUSE-SU-2025:20602-1 Security update for the Linux Kernel SUSE / openSUSE Security Updates · Mar 23, 2026
- SUSE-SU-2025:20601-1 Security update for the Linux Kernel SUSE / openSUSE Security Updates · Mar 23, 2026
- SUSE-SU-2025:02997-1 Security update for the Linux Kernel SUSE / openSUSE Security Updates · Mar 23, 2026
- SUSE-SU-2025:20586-1 Security update for the Linux Kernel SUSE / openSUSE Security Updates · Mar 23, 2026
- SUSE-SU-2025:20577-1 Security update for the Linux Kernel SUSE / openSUSE Security Updates · Mar 23, 2026
- SUSE-SU-2025:03011-1 Security update for the Linux Kernel SUSE / openSUSE Security Updates · Mar 23, 2026
- SUSE-SU-2025:02996-1 Security update for the Linux Kernel SUSE / openSUSE Security Updates · Mar 23, 2026
- DLA-4328-1 linux-6.1 - security update Debian Security (DSA / DLA) · Mar 9, 2026
- DSA-5973-1 linux - security update Debian Security (DSA / DLA) · Mar 9, 2026
- SUSE-SU-2025:02846-1 Security update for the Linux Kernel SUSE / openSUSE Security Updates · Feb 4, 2026
- USN-7789-2 linux-raspi vulnerabilities Ubuntu Security Notices (USN) · Feb 4, 2026
- SUSE-SU-2025:02853-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
- USN-7770-1 linux-azure vulnerabilities Ubuntu Security Notices (USN) · Feb 4, 2026
- SUSE-SU-2025:02969-1 Security update for the Linux Kernel SUSE / openSUSE Security Updates · Feb 4, 2026
- SUSE-SU-2025:03023-1 Security update for the Linux Kernel SUSE / openSUSE Security Updates · Feb 4, 2026
- ALAS2023-2025-1080 Important: kernel6.12 security update (Amazon Linux 2023) Amazon Linux Security Center (ALAS) · Oct 2, 2025
- ALAS2023-2025-1111 Important: kernel security update (Amazon Linux 2023) Amazon Linux Security Center (ALAS) · Oct 2, 2025
- ELSA-2025-20551 Important: Unbreakable Enterprise kernel security update (Oracle Linux 9) Oracle Linux Security Advisories (ELSA) · Sep 8, 2025
References
- https://git.kernel.org/stable/c/328cac3f9f8ae394748485e769a527518a9137c8
- https://git.kernel.org/stable/c/2e36a81d388ec9c3f78b6223f7eda2088cd40adb
- https://git.kernel.org/stable/c/57fbbe29e86042bbaa31c1a30d2afa16c427e3f7
- https://git.kernel.org/stable/c/603943f022a7fe5cc83ca7005faf34798fb7853f
- https://git.kernel.org/stable/c/54a3ecaeeeae8176da8badbd7d72af1017032c39