# CVE-2026-89759: linux: In the Linux kernel, the following vulnerability has been resolved:  mm/kmemleak: avoid soft lockup when scanning tas...

CVE-2026-89759 is fixed in 2 products on 1 platform, first by DEBIAN-CVE-2026-89759, released September 23, 2026. It is not reported as exploited. Patch Radar priority: Routine.

- Web page: https://patchblox.com/security/cve/CVE-2026-89759
- Priority: Routine
- CVSS: n/a
- EPSS: 0.0020
- CISA KEV: not listed
- Exploited (vendor report): no
- Publicly disclosed: no
- Published: Sep 11, 2026

## Description

In the Linux kernel, the following vulnerability has been resolved:  mm/kmemleak: avoid soft lockup when scanning task stacks  Patch series "mm/kmemleak: avoid soft lockup when scanning task", v3.  kmemleak_scan() scans every task stack under one rcu_read_lock() with no reschedule point, which can trip the soft lockup watchdog on hosts with very many threads.  That prints the following message, depending on the workload+host configuration:        watchdog: BUG: soft lockup - CPU#35 stuck for 22s! [kmemleak:537]        scan_block        kmemleak_scan        kmemleak_scan_thread        kthread  Patch 1 walks the tasks with find_ge_pid() so the scan reschedules between tasks  Patches 2-3 let the scan loops stop early once a scan is interrupted.   This patch (of 3):  kmemleak_scan() walks every thread and scans its kernel stack under a single rcu_read_lock() with no reschedule point.  On a host with very many threads -- amplified by KASAN/lockdep in debug builds -- this loop can hog a CPU long enough to trip the soft lockup watchdog:    watchdog: BUG: soft lockup - CPU#35 stuck for 22s! [kmemleak:537]    scan_block    kmemleak_scan    kmemleak_scan_thread    kthread  A cond_resched() cannot be added directly: the loop runs inside an RCU read-side critical section.  Walk the tasks one PID at a time with find_ge_pid(), taking the RCU read lock only to look up and pin each task.  The stack is then scanned with no lock held, so cond_resched() runs between tasks and the scan stops early on scan_should_stop().  This follows the next_tgid()/task_seq_get_next() iteration pattern and keeps each RCU critical section short.

## Where it's fixed

| Platform | Product | Fixed in | Fix | Released |
|---|---|---|---|---|
| Linux | linux Debian 13.5 (trixie) | 6.12.111-1 | [DEBIAN-CVE-2026-89759](https://patchblox.com/security/data/fix/linux/debian-cve-2026-89759.md) | Sep 23, 2026 |
| Linux | linux Debian 14 | 7.2.6-1 | [DEBIAN-CVE-2026-89759](https://patchblox.com/security/data/fix/linux/debian-cve-2026-89759.md) | Sep 23, 2026 |
| Linux | linux-6.12 Debian 12.15 (bookworm) | 6.12.111-1~deb12u1 | [DEBIAN-CVE-2026-89759](https://patchblox.com/security/data/fix/linux/debian-cve-2026-89759.md) | Sep 23, 2026 |

---

Data as of 2026-11-09T01:18:40Z UTC. Source: Patchblox Patch Radar (https://patchblox.com/security/patch-radar). Patchblox finds out-of-date software on Windows, macOS and Linux and updates it through release rings: https://patchblox.com/demo

Free to use with attribution: show "Data: Patchblox Patch Radar" with a link to https://patchblox.com/security/patch-radar. Terms, including what needs a written agreement: https://patchblox.com/security/patch-radar/use-the-data

Product names, logos and trademarks shown on Patch Radar belong to their respective owners. They are used only to identify the software each security fix applies to and to help readers find their platform. Their use does not imply any affiliation with, or endorsement by, those owners, and Patchblox is not affiliated with any of them.
