Description
In the Linux kernel, the following vulnerability has been resolved:
sched/numa: fix memory leak due to the overwritten vma->numab_state
[Problem Description]
When running the hackbench program of LTP, the following memory leak is
reported by kmemleak.
# /opt/ltp/testcases/bin/hackbench 20 thread 1000
Running with 20*40 (== 800) tasks.
# dmesg | grep kmemleak
...
kmemleak: 480 new suspected memory leaks (see /sys/kernel/debug/kmemleak)
kmemleak: 665 new suspected memory leaks (see /sys/kernel/debug/kmemleak)
# cat /sys/kernel/debug/kmemleak
unreferenced object 0xffff888cd8ca2c40 (size 64):
comm "hackbench", pid 17142, jiffies 4299780315
hex dump (first 32 bytes):
ac 74 49 00 01 00 00 00 4c 84 49 00 01 00 00 00 .tI.....L.I.....
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
backtrace (crc bff18fd4):
[<ffffffff81419a89>] __kmalloc_cache_noprof+0x2f9/0x3f0
[<ffffffff8113f715>] task_numa_work+0x725/0xa00
[<ffffffff8110f878>] task_work_run+0x58/0x90
[<ffffffff81ddd9f8>] syscall_exit_to_user_mode+0x1c8/0x1e0
[<ffffffff81dd78d5>] do_syscall_64+0x85/0x150
[<ffffffff81e0012b>] entry_SYSCALL_64_after_hwframe+0x76/0x7e
...
This issue can be consistently reproduced on three different servers:
* a 448-core server
* a 256-core server
* a 192-core server
[Root Cause]
Since multiple threads are created by the hackbench program (along with
the command argument 'thread'), a shared vma might be accessed by two or
more cores simultaneously. When two or more cores observe that
vma->numab_state is NULL at the same time, vma->numab_state will be
overwritten.
Although current code ensures that only one thread scans the VMAs in a
single 'numa_scan_period', there might be a chance for another thread
to enter in the next 'numa_scan_period' while we have not gotten till
numab_state allocation [1].
Note that the command `/opt/ltp/testcases/bin/hackbench 50 process 1000`
cannot the reproduce the issue. It is verified with 200+ test runs.
[Solution]
Use the cmpxchg atomic operation to ensure that only one thread executes
the vma->numab_state assignment.
[1] https://lore.kernel.org/lkml/1794be3c-358c-4cdc-a43d-a1f841d91ef7@amd.com/
Affected products
| Vendor | Product | Affected | Fixed |
|---|---|---|---|
| Linux | Linux | 6.4 | 6.6.66 |
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.5-1 | — |
| Debian 13 | linux | 6.12.5-1 | — |
Ubuntu
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Ubuntu 24.04 LTS | linux | 6.8.0-58.60 | USN-7449-1 |
| Ubuntu 24.04 LTS | linux-aws | 6.8.0-1027.29 | USN-7449-1 |
| Ubuntu 24.04 LTS | linux-azure | 6.8.0-1027.32 | USN-7449-1 |
| Ubuntu 24.04 LTS | linux-azure-6.11 | 6.11.0-1012.12~24.04.1 | — |
| Ubuntu 24.04 LTS | linux-azure-nvidia | 6.8.0-1014.15 | USN-7468-1 |
| Ubuntu 24.04 LTS | linux-gcp | 6.8.0-1028.30 | USN-7450-1 |
| Ubuntu 24.04 LTS | linux-gcp-6.11 | 6.11.0-1011.11~24.04.1 | — |
| Ubuntu 24.04 LTS | linux-gke | 6.8.0-1023.27 | USN-7450-1 |
| Ubuntu 24.04 LTS | linux-gkeop | 6.8.0-1010.12 | USN-7450-1 |
| Ubuntu 24.04 LTS | linux-hwe-6.11 | 6.11.0-21.21~24.04.1 | USN-7379-1 |
| Ubuntu 24.04 LTS | linux-ibm | 6.8.0-1024.24 | USN-7449-1 |
| Ubuntu 24.04 LTS | linux-lowlatency-hwe-6.11 | 6.11.0-1011.12~24.04.1 | USN-7381-1 |
| Ubuntu 24.04 LTS | linux-nvidia | 6.8.0-1026.29 | USN-7449-1 |
| Ubuntu 24.04 LTS | linux-nvidia-6.11 | 6.11.0-1007.7 | — |
| Ubuntu 24.04 LTS | linux-nvidia-lowlatency | 6.8.0-1026.29.1 | USN-7449-1 |
| Ubuntu 24.04 LTS | linux-nvidia-tegra | 6.8.0-1008.8 | — |
| Ubuntu 24.04 LTS | linux-oem-6.11 | 6.11.0-1017.17 | USN-7382-1 |
| Ubuntu 24.04 LTS | linux-oem-6.8 | 6.8.0-1026.26 | USN-7449-1 |
| Ubuntu 24.04 LTS | linux-oracle | 6.8.0-1024.25 | USN-7449-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-58.60.1 | USN-7449-1 |
| Ubuntu 24.04 LTS | linux-xilinx | 6.8.0-1017.18 | — |
| Ubuntu 22.04 LTS | linux-aws-6.8 | 6.8.0-1027.29~22.04.1 | USN-7451-1 |
| Ubuntu 22.04 LTS | linux-azure-6.8 | 6.8.0-1027.32~22.04.1 | USN-7449-1 |
| Ubuntu 22.04 LTS | linux-gcp-6.8 | 6.8.0-1028.30~22.04.1 | USN-7452-1 |
| Ubuntu 22.04 LTS | linux-hwe-6.8 | 6.8.0-58.60~22.04.1 | USN-7449-2 |
| Ubuntu 22.04 LTS | linux-ibm-6.8 | 6.8.0-1024.24~22.04.1 | — |
| Ubuntu 22.04 LTS | linux-nvidia-6.8 | 6.8.0-1026.29~22.04.1 | USN-7449-1 |
| Ubuntu 22.04 LTS | linux-oracle-6.8 | 6.8.0-1024.25~22.04.1 | USN-7449-1 |
| Ubuntu 22.04 LTS | linux-riscv +32 | No fix yet | — |
| Ubuntu 22.04 LTS | linux-riscv-6.8 +1 | 6.8.0-58.60.1~22.04.1 | USN-7449-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-1020.21 | USN-7453-1 |
| Ubuntu Pro Realtime 22.04 LTS | linux-realtime-6.8 | 6.8.1-1020.21~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-default-base | 6.4.0-31.1.21.9 | SUSE-SU-2025:20475-1 |
| SLE Micro 6.1 | kernel-rt +1 | 6.4.0-34.1 | SUSE-SU-2025:20483-1 |
| SLE Micro 6.1 | kernel-source +2 | 6.4.0-31.1 | SUSE-SU-2025:20475-1 |
| SLE Micro 6.0 | kernel-default-base | 6.4.0-31.1.21.9 | SUSE-SU-2025:20493-1 |
| SLE Micro 6.0 | kernel-rt +1 | 6.4.0-34.1 | SUSE-SU-2025:20498-1 |
| SLE Micro 6.0 | kernel-source +2 | 6.4.0-31.1 | SUSE-SU-2025:20493-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 |
Azure Linux
| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Azure Linux 3 | kernel | 6.6.76.1-1 | — |
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 26
- WID-SEC-2024-3762 Linux Kernel: Mehrere Schwachstellen ermöglichen Denial of Service BSI CERT-Bund (WID) · Nov 10, 2026
- USN-7449-1 linux, linux-aws, linux-azure, linux-azure-6.8, linux-ibm, linux-lowlatency, linux-lowlatency-hwe-6.8, linux-nvidia, linux-nvidia-6.8, linux-nvidia-lowlatency, linux-oem-6.8, linux-oracle, linux-oracle-6.8 vulnerabilities Ubuntu Security Notices (USN) · Nov 3, 2026
- USN-7450-1 linux-gcp, linux-gke, linux-gkeop vulnerabilities Ubuntu Security Notices (USN) · Nov 3, 2026
- USN-7468-1 linux-azure-nvidia vulnerabilities Ubuntu Security Notices (USN) · Nov 3, 2026
- USN-7453-1 linux-realtime vulnerabilities Ubuntu Security Notices (USN) · Nov 3, 2026
- USN-7451-1 linux-aws-6.8 vulnerabilities Ubuntu Security Notices (USN) · Nov 3, 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-7452-1 linux-gcp-6.8 vulnerabilities Ubuntu Security Notices (USN) · Nov 3, 2026
- USN-7449-2 linux-hwe-6.8 vulnerabilities Ubuntu Security Notices (USN) · Nov 3, 2026
- USN-7379-1 linux, linux-aws, linux-azure, linux-gcp, linux-hwe-6.11, linux-oracle, linux-realtime vulnerabilities Ubuntu Security Notices (USN) · Oct 29, 2026
- USN-7382-1 linux-oem-6.11 vulnerabilities Ubuntu Security Notices (USN) · Oct 29, 2026
- USN-7381-1 linux-lowlatency-hwe-6.11 vulnerabilities Ubuntu Security Notices (USN) · Jun 3, 2026
- SUSE-SU-2025:20475-1 Security update for the Linux Kernel SUSE / openSUSE Security Updates · Mar 23, 2026
- SUSE-SU-2025:20493-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:20498-1 Security update for the Linux Kernel SUSE / openSUSE Security Updates · Mar 23, 2026
- SUSE-SU-2025:20483-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
- 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