Description
In the Linux kernel, the following vulnerability has been resolved:
sch_htb: make htb_deactivate() idempotent
Alan reported a NULL pointer dereference in htb_next_rb_node()
after we made htb_qlen_notify() idempotent.
It turns out in the following case it introduced some regression:
htb_dequeue_tree():
|-> fq_codel_dequeue()
|-> qdisc_tree_reduce_backlog()
|-> htb_qlen_notify()
|-> htb_deactivate()
|-> htb_next_rb_node()
|-> htb_deactivate()
For htb_next_rb_node(), after calling the 1st htb_deactivate(), the
clprio[prio]->ptr could be already set to NULL, which means
htb_next_rb_node() is vulnerable here.
For htb_deactivate(), although we checked qlen before calling it, in
case of qlen==0 after qdisc_tree_reduce_backlog(), we may call it again
which triggers the warning inside.
To fix the issues here, we need to:
1) Make htb_deactivate() idempotent, that is, simply return if we
already call it before.
2) Make htb_next_rb_node() safe against ptr==NULL.
Many thanks to Alan for testing and for the reproducer.
Affected products
| Vendor | Product | Affected | Fixed |
|---|---|---|---|
| Linux | Linux | 6.1.138 – < 6.1.139, 6.6.90 – < 6.6.91, 6.12.28 – < 6.12.29, 6.14.6 – < 6.14.7 | 6.1.139 |
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.29-1 | — |
| Debian 13 | linux | 6.12.29-1 | — |
| Debian 12 | linux | 6.1.140-1 | DSA-5925-1 |
| Debian 11 | linux-6.1 | 6.1.140-1~deb11u1 | DLA-4271-1 |
Ubuntu
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Ubuntu 24.04 LTS | linux-realtime +1 | No fix yet | — |
| Ubuntu 22.04 LTS | linux-riscv +32 | No fix yet | — |
| 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 | — |
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 +6 | 6.4.0-150600.23.53.1 | SUSE-SU-2025:02000-1 |
| SLES 15 SP6 | kernel-azure +2 | 6.4.0-150600.8.40.1 | SUSE-SU-2025:01965-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.53.1.150600.12.24.1 | SUSE-SU-2025:02000-1 |
| SLES 15 SP5 | kernel-64kb +6 | 5.14.21-150500.55.113.1 | SUSE-SU-2025:02264-1 |
| SLES 15 SP5 | kernel-default-base | 5.14.21-150500.55.113.1.150500.6.53.1 | SUSE-SU-2025:02264-1 |
| SLES 15 SP4 | kernel-64kb +3 | 5.14.21-150400.24.170.2 | SUSE-SU-2025:02537-1 |
| SLES 15 SP4 | kernel-default-base | 5.14.21-150400.24.170.2.150400.24.86.2 | SUSE-SU-2025:02537-1 |
| SLES 15 SP4 | kernel-docs +2 | 5.14.21-150400.24.170.1 | SUSE-SU-2025:02537-1 |
| SLES 15 SP3 | kernel-64kb +6 | 5.3.18-150300.59.211.1 | SUSE-SU-2025:02308-1 |
| SLES 15 SP3 | kernel-default-base | 5.3.18-150300.59.211.1.150300.18.126.1 | SUSE-SU-2025:02308-1 |
| SLES 15 SP3 | kernel-obs-build | 5.3.18-150300.59.212.1 | SUSE-SU-2025:02308-1 |
Show 23 more (older releases, extended support, other products)Fewer releases
| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| SLES 12 SP5 | kernel-syms +2 | 4.12.14-122.261.1 | SUSE-SU-2025:01983-1 |
| SLES for SAP 15 SP5 | kernel-default-base | 5.14.21-150500.55.113.1.150500.6.53.1 | SUSE-SU-2025:02264-1 |
| SLES for SAP 15 SP5 | kernel-docs +4 | 5.14.21-150500.55.113.1 | SUSE-SU-2025:02264-1 |
| SLES for SAP 15 SP4 | kernel-default +1 | 5.14.21-150400.24.170.2 | SUSE-SU-2025:02537-1 |
| SLES for SAP 15 SP4 | kernel-default-base | 5.14.21-150400.24.170.2.150400.24.86.2 | SUSE-SU-2025:02537-1 |
| SLES for SAP 15 SP4 | kernel-docs +2 | 5.14.21-150400.24.170.1 | SUSE-SU-2025:02537-1 |
| SLES for SAP 15 SP3 | kernel-default-base | 5.3.18-150300.59.211.1.150300.18.126.1 | SUSE-SU-2025:02308-1 |
| SLES for SAP 15 SP3 | kernel-docs +4 | 5.3.18-150300.59.211.1 | SUSE-SU-2025:02308-1 |
| SLES for SAP 15 SP3 | kernel-obs-build | 5.3.18-150300.59.212.1 | SUSE-SU-2025:02308-1 |
| SLE Micro 6.1 | kernel-default-base | 6.4.0-30.1.21.8 | SUSE-SU-2025:20419-1 |
| SLE Micro 6.1 | kernel-rt +1 | 6.4.0-33.1 | SUSE-SU-2025:20421-1 |
| SLE Micro 6.1 | kernel-source +2 | 6.4.0-30.1 | SUSE-SU-2025:20419-1 |
| SLE Micro 6.0 | kernel-default-base | 6.4.0-30.1.21.8 | SUSE-SU-2025:20408-1 |
| SLE Micro 6.0 | kernel-rt +1 | 6.4.0-33.1 | SUSE-SU-2025:20413-1 |
| SLE Micro 6.0 | kernel-source +2 | 6.4.0-30.1 | SUSE-SU-2025:20408-1 |
| SLE Micro 5.5 | kernel-default-base | 5.14.21-150500.55.113.1.150500.6.53.1 | SUSE-SU-2025:02264-1 |
| SLE Micro 5.5 | kernel-rt | 5.14.21-150500.13.100.2 | SUSE-SU-2025:02321-1 |
| SLE Micro 5.5 | kernel-source +1 | 5.14.21-150500.55.113.1 | SUSE-SU-2025:02264-1 |
| SLE Micro 5.5 | kernel-source-rt | 5.14.21-150500.13.100.1 | SUSE-SU-2025:02321-1 |
| SLE Micro 5.4 | kernel-default | 5.14.21-150400.24.170.2 | SUSE-SU-2025:02537-1 |
| SLE Micro 5.4 | kernel-default-base | 5.14.21-150400.24.170.2.150400.24.86.2 | SUSE-SU-2025:02537-1 |
| SLE Micro 5.4 | kernel-rt +1 | 5.14.21-150400.15.124.1 | SUSE-SU-2025:02322-1 |
| SLE Micro 5.3 | kernel-default | 5.14.21-150400.24.170.2 | SUSE-SU-2025:02537-1 |
| SLE Micro 5.3 | kernel-default-base | 5.14.21-150400.24.170.2.150400.24.86.2 | SUSE-SU-2025:02537-1 |
| SLE Micro 5.3 | kernel-rt +1 | 5.14.21-150400.15.124.1 | SUSE-SU-2025:02322-1 |
| SLE Micro 5.2 | kernel-default | 5.3.18-150300.59.211.1 | SUSE-SU-2025:02308-1 |
| SLE Micro 5.2 | kernel-default-base | 5.3.18-150300.59.211.1.150300.18.126.1 | SUSE-SU-2025:02308-1 |
| SLE Micro 5.2 | kernel-rt +1 | 5.3.18-150300.214.1 | SUSE-SU-2025:02320-1 |
| SLE Micro 5.1 | kernel-default | 5.3.18-150300.59.211.1 | SUSE-SU-2025:02308-1 |
| SLE Micro 5.1 | kernel-default-base | 5.3.18-150300.59.211.1.150300.18.126.1 | SUSE-SU-2025:02308-1 |
| SLE Micro 5.1 | kernel-rt +1 | 5.3.18-150300.214.1 | SUSE-SU-2025:02320-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.53.1 | SUSE-SU-2025:02000-1 |
| SLE Live Patching 15 SP6 | kernel-livepatch-SLE15-SP6-RT_Update_11 | 1-150600.1.3.2 | SUSE-SU-2025:01964-1 |
| SLE Live Patching 15 SP6 | kernel-livepatch-SLE15-SP6_Update_12 | 1-150600.13.3.1 | SUSE-SU-2025:02000-1 |
| SLE Live Patching 15 SP5 | kernel-default | 5.14.21-150500.55.113.1 | SUSE-SU-2025:02264-1 |
| SLE Live Patching 15 SP5 | kernel-livepatch-SLE15-SP5_Update_28 | 1-150500.11.3.1 | SUSE-SU-2025:02264-1 |
| SLE Live Patching 15 SP3 | kernel-default | 5.3.18-150300.59.211.1 | SUSE-SU-2025:02308-1 |
| SLE Live Patching 15 SP3 | kernel-livepatch-SLE15-SP3_Update_59 | 1-150300.7.3.1 | SUSE-SU-2025:02308-1 |
| SLE Live Patching 12 SP5 | kernel-default | 4.12.14-122.261.1 | SUSE-SU-2025:01983-1 |
| SLE Live Patching 12 SP5 | kgraft-patch-SLE12-SP5_Update_69 | 1-8.3.1 | SUSE-SU-2025:01983-1 |
| SLE HPC 15 SP5 | kernel-64kb +5 | 5.14.21-150500.55.113.1 | SUSE-SU-2025:02264-1 |
| SLE HPC 15 SP5 | kernel-default-base | 5.14.21-150500.55.113.1.150500.6.53.1 | SUSE-SU-2025:02264-1 |
| SLE HPC 15 SP4 | kernel-64kb +2 | 5.14.21-150400.24.170.2 | SUSE-SU-2025:02537-1 |
| SLE HPC 15 SP4 | kernel-default-base | 5.14.21-150400.24.170.2.150400.24.86.2 | SUSE-SU-2025:02537-1 |
| SLE HPC 15 SP4 | kernel-docs +2 | 5.14.21-150400.24.170.1 | SUSE-SU-2025:02537-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.39.1 | SUSE-SU-2025:01964-1 |
| SUSE Manager Server 4.3 | kernel-default +1 | 5.14.21-150400.24.170.2 | SUSE-SU-2025:02537-1 |
| SUSE Manager Server 4.3 | kernel-default-base | 5.14.21-150400.24.170.2.150400.24.86.2 | SUSE-SU-2025:02537-1 |
| SUSE Manager Server 4.3 | kernel-syms +1 | 5.14.21-150400.24.170.1 | SUSE-SU-2025:02537-1 |
| SUSE Manager Proxy 4.3 | kernel-default | 5.14.21-150400.24.170.2 | SUSE-SU-2025:02537-1 |
| SUSE Manager Proxy 4.3 | kernel-default-base | 5.14.21-150400.24.170.2.150400.24.86.2 | SUSE-SU-2025:02537-1 |
| SUSE Manager Proxy 4.3 | kernel-syms +1 | 5.14.21-150400.24.170.1 | SUSE-SU-2025:02537-1 |
| SUSE Enterprise Storage 7.1 | kernel-64kb +5 | 5.3.18-150300.59.211.1 | SUSE-SU-2025:02308-1 |
| SUSE Enterprise Storage 7.1 | kernel-default-base | 5.3.18-150300.59.211.1.150300.18.126.1 | SUSE-SU-2025:02308-1 |
| SUSE Enterprise Storage 7.1 | kernel-obs-build | 5.3.18-150300.59.212.1 | SUSE-SU-2025:02308-1 |
openSUSE
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| openSUSE Leap 15.6 | dtb-aarch64 +10 | 6.4.0-150600.23.53.1 | SUSE-SU-2025:02000-1 |
| openSUSE Leap 15.6 | kernel-azure +2 | 6.4.0-150600.8.40.1 | SUSE-SU-2025:01965-1 |
| openSUSE Leap 15.6 | kernel-default-base | 6.4.0-150600.23.53.1.150600.12.24.1 | SUSE-SU-2025:02000-1 |
| openSUSE Leap 15.6 | kernel-rt +3 | 6.4.0-150600.10.39.1 | SUSE-SU-2025:01964-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 |
| Oracle Linux 8 | bpftool +18 | 5.15.0-314.193.5.3.el9uek | ELSA-2025-25757 |
| Oracle Linux 7 | kernel-uek +6 | 5.4.17-2136.346.6.el8uek | ELSA-2025-20521 |
| Oracle Linux 7 | kernel-uek-tools | 5.4.17-2136.346.6.el7uek | ELSA-2025-20521 |
Advisories 25
- WID-SEC-2025-1114 Linux Kernel: Mehrere Schwachstellen BSI CERT-Bund (WID) · Nov 12, 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:20419-1 Security update for the Linux Kernel SUSE / openSUSE Security Updates · Mar 23, 2026
- SUSE-SU-2025:02320-1 Security update for the Linux Kernel SUSE / openSUSE Security Updates · Mar 23, 2026
- SUSE-SU-2025:20408-1 Security update for the Linux Kernel SUSE / openSUSE Security Updates · Mar 23, 2026
- SUSE-SU-2025:02321-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:02000-1 Security update for the Linux Kernel SUSE / openSUSE Security Updates · Mar 23, 2026
- SUSE-SU-2025:02322-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
- DLA-4271-1 linux-6.1 - security update Debian Security (DSA / DLA) · Mar 9, 2026
- DSA-5925-1 linux - security update Debian Security (DSA / DLA) · Mar 9, 2026
- SUSE-SU-2025:02537-1 Security update for the Linux Kernel SUSE / openSUSE Security Updates · Feb 5, 2026
- SUSE-SU-2025:01964-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:02264-1 Security update for the Linux Kernel SUSE / openSUSE Security Updates · Feb 4, 2026
- SUSE-SU-2025:01983-1 Security update for the Linux Kernel SUSE / openSUSE Security Updates · Feb 4, 2026
- SUSE-SU-2025:01965-1 Security update for the Linux Kernel SUSE / openSUSE Security Updates · Feb 4, 2026
- ELSA-2025-25757 Important: Unbreakable Enterprise kernel security update (Oracle Linux 8) Oracle Linux Security Advisories (ELSA) · Nov 10, 2025
- ELSA-2025-20530 Important: Unbreakable Enterprise kernel security update (Oracle Linux 9) Oracle Linux Security Advisories (ELSA) · Aug 18, 2025
- ELSA-2025-20521 Important: Unbreakable Enterprise kernel security update (Oracle Linux 7) Oracle Linux Security Advisories (ELSA) · Aug 10, 2025
- ELSA-2025-20480 Important: Unbreakable Enterprise kernel security update (Oracle Linux 9) Oracle Linux Security Advisories (ELSA) · Jul 17, 2025
- SUSE-SU-2025:02308-1 Security update for the Linux Kernel SUSE / openSUSE Security Updates · Jul 15, 2025
References
- https://git.kernel.org/stable/c/99ff8a20fd61315bf9ae627440a5ff07d22ee153
- https://git.kernel.org/stable/c/a9945f7cf1709adc5d2d31cb6cfc85627ce299a8
- https://git.kernel.org/stable/c/c2d25fddd867ce20a266806634eeeb5c30cb520c
- https://git.kernel.org/stable/c/c928dd4f6bf0c25c72b11824a1e9ac9bd37296a0
- https://git.kernel.org/stable/c/31ff70ad39485698cf779f2078132d80b57f6c07
- https://git.kernel.org/stable/c/98cd7ed92753090a714f0802d4434314526fe61d
- https://git.kernel.org/stable/c/c4792b9e38d2f61b07eac72f10909fa76130314b
- https://git.kernel.org/stable/c/3769478610135e82b262640252d90f6efb05be71