---
id: CVE-2026-89753
title: 'mm/vmscan: report RCU-tasks quiescent states in shrink_lruvec()'
summary: |-
  In the Linux kernel, the following vulnerability has been resolved:

  mm/vmscan: report RCU-tasks quiescent states in shrink_lruvec()

  I am seeing some rcu_tasks stalls in the Meta fleet during reclaim.

    INFO: rcu_tasks detected stalls …
severity: medium
cvss: 5.5
cvssVector: 'CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H'
cvssSource: vendor
cwe:
  - CWE-821
vendor: Linux
product: Linux
affected:
  - >-
    Linux >= 8315f42295d2667a7f942f154b73a86fd7cb2227 <
    4f50593c9cbc883d8c9b50148a3e8a8b1fd35f57
  - >-
    Linux >= 8315f42295d2667a7f942f154b73a86fd7cb2227 <
    4cdc1bdf40944de5c6b118fef07ad23f07844338
  - >-
    Linux >= 8315f42295d2667a7f942f154b73a86fd7cb2227 <
    a67a00a70a7c8309ca47ea157ef3e8ed3d268f5b
  - >-
    Linux >= 8315f42295d2667a7f942f154b73a86fd7cb2227 <
    029c9408049f7f582230322057b7075bea594fd5
  - >-
    Linux >= 8315f42295d2667a7f942f154b73a86fd7cb2227 <
    b5391676c61d94ffe3272dcf6723738b802f79e8
  - >-
    Linux >= 8315f42295d2667a7f942f154b73a86fd7cb2227 <
    3fd50239986302cb050d3649351bcec00fa9d5ab
  - >-
    Linux >= 8315f42295d2667a7f942f154b73a86fd7cb2227 <
    cf3ba0911a1cf8680371ff113b90088edd01d2bb
  - >-
    Linux >= 8315f42295d2667a7f942f154b73a86fd7cb2227 <
    25f52e81216884a7444bf07a606691feb09a94e3
  - Linux 3.18
published: '2026-09-11'
updated: '2026-10-19'
sourceUpdated: '2026-10-19T08:52:06.974Z'
source: CVEORG
sourceUrl: 'https://www.cve.org/CVERecord?id=CVE-2026-89753'
references:
  - url: 'https://git.kernel.org/stable/c/4f50593c9cbc883d8c9b50148a3e8a8b1fd35f57'
  - url: 'https://git.kernel.org/stable/c/4cdc1bdf40944de5c6b118fef07ad23f07844338'
  - url: 'https://git.kernel.org/stable/c/a67a00a70a7c8309ca47ea157ef3e8ed3d268f5b'
  - url: 'https://git.kernel.org/stable/c/029c9408049f7f582230322057b7075bea594fd5'
  - url: 'https://git.kernel.org/stable/c/b5391676c61d94ffe3272dcf6723738b802f79e8'
  - url: 'https://git.kernel.org/stable/c/3fd50239986302cb050d3649351bcec00fa9d5ab'
  - url: 'https://git.kernel.org/stable/c/cf3ba0911a1cf8680371ff113b90088edd01d2bb'
  - url: 'https://git.kernel.org/stable/c/25f52e81216884a7444bf07a606691feb09a94e3'
  - url: >-
      https://security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-89753.json
  - url: 'https://access.redhat.com/security/cve/CVE-2026-89753'
  - url: 'https://bugzilla.redhat.com/show_bug.cgi?id=2532148'
  - url: 'https://www.cve.org/CVERecord?id=CVE-2026-89753'
  - url: 'https://nvd.nist.gov/vuln/detail/CVE-2026-89753'
  - url: >-
      https://git.kernel.org/pub/scm/linux/security/vulns.git/plain/cve/published/2026/CVE-2026-89753.mbox
tags:
  - cve.org
  - csaf
  - vex
  - red-hat
epss: 0.00177
epssPercentile: 0.07155
ingestedAt: '2026-09-14T15:23:07.448Z'
---

## Overview

In the Linux kernel, the following vulnerability has been resolved:

mm/vmscan: report RCU-tasks quiescent states in shrink_lruvec()

I am seeing some rcu_tasks stalls in the Meta fleet during reclaim.

  INFO: rcu_tasks detected stalls on tasks:
	0000000088620d09: .. nvcsw: 6735/6735 holdout: 1 idle_cpu: -1/8
	task:GlobalCPUThread state:R  running task  pid:2552016 tgid:2524552
  Call Trace:
   shrink_lruvec
   mem_cgroup_iter
   shrink_node
   do_try_to_free_pages
   try_to_free_pages
   __alloc_frozen_pages_noprof
   alloc_pages_noprof
   pte_alloc_one
   __pte_alloc
   handle_mm_fault

Nothing promises direct reclaim returns in bounded time, and the scan loop
in shrink_lruvec() only calls cond_resched(), which is a no-op on
PREEMPTION kernels.  Involuntary preemption is not a Tasks-RCU quiescent
state, so the reclaiming task never reports one and becomes a holdout.

Upgrade it to cond_resched_tasks_rcu_qs(), which reports a quiescent state
even when cond_resched() does nothing.

PS: This has been discussed in [1]

## Affected

- `Linux >= 8315f42295d2667a7f942f154b73a86fd7cb2227 < 4f50593c9cbc883d8c9b50148a3e8a8b1fd35f57`
- `Linux >= 8315f42295d2667a7f942f154b73a86fd7cb2227 < 4cdc1bdf40944de5c6b118fef07ad23f07844338`
- `Linux >= 8315f42295d2667a7f942f154b73a86fd7cb2227 < a67a00a70a7c8309ca47ea157ef3e8ed3d268f5b`
- `Linux >= 8315f42295d2667a7f942f154b73a86fd7cb2227 < 029c9408049f7f582230322057b7075bea594fd5`
- `Linux >= 8315f42295d2667a7f942f154b73a86fd7cb2227 < b5391676c61d94ffe3272dcf6723738b802f79e8`
- `Linux >= 8315f42295d2667a7f942f154b73a86fd7cb2227 < 3fd50239986302cb050d3649351bcec00fa9d5ab`
- `Linux >= 8315f42295d2667a7f942f154b73a86fd7cb2227 < cf3ba0911a1cf8680371ff113b90088edd01d2bb`
- `Linux >= 8315f42295d2667a7f942f154b73a86fd7cb2227 < 25f52e81216884a7444bf07a606691feb09a94e3`
- `Linux 3.18`

## Remediation

Refer to the linked advisories for vendor-supplied fixes and affected version ranges.

## Vendor advisories

- **Red Hat VEX** · Low · affected: Red Hat Enterprise Linux 10, Red Hat Enterprise Linux 6, Red Hat Enterprise Linux 8, Red Hat Enterprise Linux 9, Red Hat OpenShift Container Platform 4 · no fix planned: Red Hat Enterprise Linux 6, Red Hat Enterprise Linux 10, Red Hat Enterprise Linux 8, Red Hat Enterprise Linux 9, … · updated 2026-10-17 · [vex](https://security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-89753.json)
