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.
CVSS Details
- CVSS 3.1 Base Score: 5.5
- CVSS 3.1 Vector: (CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H)
Covered by Rapid7
| Product | Vendor Advisory | Solution File | Added | Published |
|---|---|---|---|---|
| Debian | — | Upgrade linuxUpgrade linux-6.1 | May 28, 2025 | May 20, 2025 |
| Dell Powerstore Dsa2025429 | — | Upgrade Dell PowerStoreOS to the latest version | Dec 3, 2025 | Dec 2, 2025 |
| Dell Powerstore Dsa2026039 | — | Upgrade Dell PowerStoreOS to the latest version | Jan 13, 2026 | Jan 6, 2026 |
| Oracle_linux | — | Upgrade kernel-uek | Aug 12, 2025 | May 20, 2025 |
| Redhat_linux | — | — | Jul 9, 2025 | May 20, 2025 |
| Suse | — | Upgrade dlm-kmp-defaultUpgrade kernel-obs-buildUpgrade dtb-armUpgrade dtb-renesasUpgrade dtb-rockchipUpgrade kernel-azure-vdsoUpgrade kernel-default-baseUpgrade kernel-rt_debugUpgrade ocfs2-kmp-azureUpgrade kernel-rt-develUpgrade dtb-sprdUpgrade kernel-debug-vdsoUpgrade dtb-mediatekUpgrade gfs2-kmp-defaultUpgrade kernel-64kb-extraUpgrade kernel-devel-rtUpgrade dlm-kmp-rtUpgrade kernel-rt-livepatch-develUpgrade cluster-md-kmp-64kbUpgrade dlm-kmp-azureUpgrade kselftests-kmp-azureUpgrade dtb-allwinnerUpgrade kernel-azureUpgrade kernel-default-base-rebuildUpgrade kernel-rt-extraUpgrade dtb-xilinxUpgrade reiserfs-kmp-azureUpgrade dtb-nvidiaUpgrade reiserfs-kmp-rtUpgrade kernel-rt_debug-vdsoUpgrade kernel-preempt-develUpgrade kernel-syms-rtUpgrade kernel-rt-vdsoUpgrade kernel-source-vanillaUpgrade kernel-default-livepatch-develUpgrade reiserfs-kmp-defaultUpgrade kernel-docsUpgrade kernel-rt-optionalUpgrade kernel-default-manUpgrade dtb-amdUpgrade kernel-defaultUpgrade kselftests-kmp-rtUpgrade ocfs2-kmp-defaultUpgrade dtb-socionextUpgrade kernel-develUpgrade kselftests-kmp-defaultUpgrade dtb-hisiliconUpgrade dtb-broadcomUpgrade gfs2-kmp-rtUpgrade dtb-amlogicUpgrade kernel-source-rtUpgrade kernel-docs-htmlUpgrade kernel-64kb-optionalUpgrade kernel-kvmsmall-vdsoUpgrade kernel-kvmsmall-develUpgrade gfs2-kmp-64kbUpgrade kernel-default-livepatchUpgrade kernel-64kbUpgrade kernel-kvmsmallUpgrade ocfs2-kmp-64kbUpgrade kernel-devel-azureUpgrade dtb-freescaleUpgrade dtb-apmUpgrade cluster-md-kmp-rtUpgrade kernel-zfcpdumpUpgrade kselftests-kmp-64kbUpgrade kernel-syms-azureUpgrade kernel-symsUpgrade kernel-rtUpgrade kernel-azure-develUpgrade dtb-appleUpgrade kernel-azure-optionalUpgrade gfs2-kmp-azureUpgrade kernel-macrosUpgrade kernel-default-extraUpgrade kernel-debug-develUpgrade dtb-caviumUpgrade kernel-obs-qaUpgrade kernel-debugUpgrade kernel-azure-extraUpgrade kernel-64kb-develUpgrade ocfs2-kmp-rtUpgrade dtb-amazonUpgrade dtb-alteraUpgrade dlm-kmp-64kbUpgrade reiserfs-kmp-64kbUpgrade dtb-marvellUpgrade cluster-md-kmp-defaultUpgrade cluster-md-kmp-azureUpgrade kernel-source-azureUpgrade kernel-sourceUpgrade dtb-qcomUpgrade kernel-default-develUpgrade dtb-lgUpgrade kernel-default-optionalUpgrade dtb-exynosUpgrade kernel-preemptUpgrade kernel-rt_debug-develUpgrade kernel-default-vdso | Dec 5, 2025 | Jun 16, 2025 |
| Vmware Photon_os | — | Use 'tdnf update' to upgrade all packages to the latest version. | Jul 2, 2025 | May 20, 2025 |
Prioritise with Active Threat Intelligence
With curated Threat Intelligence, you can see which vulnerabilities truly put you at risk, prioritize what matters most, and act before attackers do.
Explore Intelligence Hub