CVE Intelligence
Medium Denial of service

CVE-2024-57884 — mm: vmscan: account for free pages to prevent infinite Loop in throttle_direct_reclaim()

In the Linux kernel, the following vulnerability has been resolved: mm: vmscan: account for free pages to prevent infinite Loop in throttle_direct_reclaim() The task sometimes continues looping in throttle_direct_reclaim() because allow_direct_reclaim(pgdat) keeps returning false. #0 [ffff80002cb6f8d0] __switch_to at ffff8000080095ac #1 [ffff80002cb6f900] __schedule at ffff800008abbd1c #2 [ffff80002cb6f990] schedule at ffff800008abc50c #3 [ffff80002cb6f9b0] throttle_direct_reclaim at ffff800008273550 #4 [ffff80002cb6fa20] try_to_free_pages at ffff800008277b68 #5 [ffff80002cb6fae0] __alloc_pages_nodemask at ffff8000082c4660 #6 [ffff80002cb6fc50] alloc_pages_vma at ffff8000082e4a98 #7 [ffff80002cb6fca0] do_anonymous_page at ffff80000829f5a8 #8 [ffff80002cb6fce0] __handle_mm_fault at ffff8000082a5974 #9 [ffff80002cb6fd90] handle_mm_fault at ffff8000082a5bd4 At this point, the pgdat contains the following two zones: NODE: 4 ZONE: 0 ADDR: ffff00817fffe540 NAME: "DMA32" SIZE: 20480 MIN/LOW/HIGH: 11/28/45 VM_STAT: NR_FREE_PAGES: 359 NR_ZONE_INACTIVE_ANON: 18813 NR_ZONE_ACTIVE_ANON: 0 NR_ZONE_INACTIVE_FILE: 50 NR_ZONE_ACTIVE_FILE: 0 NR_ZONE_UNEVICTABLE: 0 NR_ZONE_WRITE_PENDING: 0 NR_MLOCK: 0 NR_BOUNCE: 0 NR_ZSPAGES: 0 NR_FREE_CMA_PAGES: 0 NODE: 4 ZONE: 1 ADDR: ffff00817fffec00 NAME: "Normal" SIZE: 8454144 PRESENT: 98304 MIN/LOW/HIGH: 68/166/264 VM_STAT: NR_FREE_PAGES: 146 NR_ZONE_INACTIVE_ANON: 94668 NR_ZONE_ACTIVE_ANON: 3 NR_ZONE_INACTIVE_FILE: 735 NR_ZONE_ACTIVE_FILE: 78 NR_ZONE_UNEVICTABLE: 0 NR_ZONE_WRITE_PENDING: 0 NR_MLOCK: 0 NR_BOUNCE: 0 NR_ZSPAGES: 0 NR_FREE_CMA_PAGES: 0 In allow_direct_reclaim(), while processing ZONE_DMA32, the sum of inactive/active file-backed pages calculated in zone_reclaimable_pages() based on the result of zone_page_state_snapshot() is zero. Additionally, since this system lacks swap, the calculation of inactive/ active anonymous pages is skipped. crash> p nr_swap_pages nr_swap_pages = $1937 = { counter = 0 } As a result, ZONE_DMA32 is deemed unreclaimable and skipped, moving on to the processing of the next zone, ZONE_NORMAL, despite ZONE_DMA32 having free pages significantly exceeding the high watermark. The problem is that the pgdat->kswapd_failures hasn't been incremented. crash> px ((struct pglist_data *) 0xffff00817fffe540)->kswapd_failures $1935 = 0x0 This is because the node deemed balanced. The node balancing logic in balance_pgdat() evaluates all zones collectively. If one or more zones (e.g., ZONE_DMA32) have enough free pages to meet their watermarks, the entire node is deemed balanced. This causes balance_pgdat() to exit early before incrementing the kswapd_failures, as it considers the overall memory state acceptable, even though some zones (like ZONE_NORMAL) remain under significant pressure. The patch ensures that zone_reclaimable_pages() includes free pages (NR_FREE_PAGES) in its calculation when no other reclaimable pages are available (e.g., file-backed or anonymous pages). This change prevents zones like ZONE_DMA32, which have sufficient free pages, from being mistakenly deemed unreclaimable. By doing so, the patch ensures proper node balancing, avoids masking pressure on other zones like ZONE_NORMAL, and prevents infinite loops in throttle_direct_reclaim() caused by allow_direct_reclaim(pgdat) repeatedly returning false. The kernel hangs due to a task stuck in throttle_direct_reclaim(), caused by a node being incorrectly deemed balanced despite pressure in certain zones, such as ZONE_NORMAL. This issue arises from zone_reclaimable_pages ---truncated---

Published Jan 15, 2025 · Updated Oct 14, 2026 · Sources: NIST National Vulnerability Database, CVE Program (cve.org) e CISA ADP, GitHub Security Advisories · CNA: Linux

Who exploits it and how urgent it is

A 0–100 score combining confirmed exploitation, ransomware and APT use, public exploits, EPSS and severity.

No exploitation signal in the sources consulted so far.
How the score was calculated
  • EPSS 0.2% (30-day exploitation probability)+2
  • Technical severity (medium)+3

The score orders the patch queue; it does not replace your asset context (internet exposure, criticality, compensating controls).

Triage

Is it exploited, how likely is exploitation, what does it touch, and how severe do the sources call it.

Exploitation
Not confirmed
Not in CISA KEV — an absence of record, not proof it is unexploited.
EPSS FIRST
0.21%
ahead of 11% of scored CVEs · Oct 14, 2026
Affects
Linux
Linux and 1 more
CVSS base
5.5
Medium · 2 source(s)

Remediation

Fixes and mitigations documented by the sources — linked to the original advisory.

  • Documented patch — git.kernel.org (NIST National Vulnerability Database)
  • Documented patch — git.kernel.org (NIST National Vulnerability Database)
  • Documented patch — git.kernel.org (NIST National Vulnerability Database)
  • Documented patch — git.kernel.org (NIST National Vulnerability Database)
  • Documented patch — git.kernel.org (NIST National Vulnerability Database)
  • Documented patch — git.kernel.org (NIST National Vulnerability Database)
  • Documented patch — git.kernel.org (NIST National Vulnerability Database)

First 24 hours

Ordered from the record’s own fields — exposure first, because you cannot patch what you have not found. A rule-generated starting point.

  1. Identify exposed assets running the affected vendor/product/version combinations (Linux Linux, Linux Linux Kernel).
  2. Apply the fixed version or the patch documented under Remediation.
  3. Search available logs for exploit probes matching the vulnerability class (denial of service), errors and authentication anomalies.

Affected scope

Vendor, product and versions as the sources word them.

VendorProductVersionsStatusSource
Linux Linux version 4.8≥ 5a1c84b404a7176b8b36e2a0041b6f0adb3151a3 and < 6aaced5abd32e2a57cd94fd64f824514d0361da8≥ 5a1c84b404a7176b8b36e2a0041b6f0adb3151a3 and < 58d0d02dbc67438fc80223fdd7bbc49cf0733284≥ 5a1c84b404a7176b8b36e2a0041b6f0adb3151a3 and < 1ff2302e8aeac7f2eedb551d7a89617283b5c6b2≥ 5a1c84b404a7176b8b36e2a0041b6f0adb3151a3 and < bfb701192129803191c9cd6cdd1f82cd07f8de2c≥ 5a1c84b404a7176b8b36e2a0041b6f0adb3151a3 and < 63eac98d6f0898229f515cb62fe4e4db2430e99c≥ 5a1c84b404a7176b8b36e2a0041b6f0adb3151a3 and < d675fefbaec3815b3ae0af1bebd97f27df3a05c8≥ 5a1c84b404a7176b8b36e2a0041b6f0adb3151a3 and < 66cd37660ec34ec444fe42f2277330ae4a36bb19 Vulnerable CVE Program (cve.org) e CISA ADP
Linux Linux Kernel version 6.13-rc4version 6.13-rc5≥ 4.8 and < 5.4.289version 6.13-rc3version 6.13-rc2version 6.13-rc1≥ 6.7 and < 6.12.9≥ 6.2 and < 6.6.70
and 3 more ≥ 5.16 and < 6.1.124≥ 5.11 and < 5.15.176≥ 5.5 and < 5.10.233
Vulnerable NIST National Vulnerability Database

Attack characteristics

The CVSS vector, decoded. It describes the attack, not your exposure to it.

Attack vector
Local
Attack complexity
Low
Privileges required
Low
User interaction
None
Scope
Unchanged
Confidentiality
None
Integrity
None
Availability
High

Every base score collected

Sources score independently and may disagree; each row says who scored it and under which version.

ScoreVersionSeverityExpl.ImpactScored by
5.5 CVSS 3.1 Medium 1.8 3.6 nvd@nist.gov via NIST National Vulnerability Database
5.5 CVSS 3.1 Medium — — GitHub, Inc. via GitHub Security Advisories
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H (score shown at the top: nvd@nist.gov)

Weakness MITRE

Weakness class according to MITRE’s CWE catalog.

CWE-835 · Infinite Loop

Other CVEs with this weakness →

Detection

Read off the CVSS vector and the weakness class. Starting points, not tested rules.

  • Local/physical vector: focus on endpoint telemetry (EDR) from affected hosts.
  • Track CPU/memory spikes and availability drops correlated with request patterns.
endpoint telemetry (EDR)resource metrics

Timeline

What happened to this CVE, newest first.

  • 2026
  • Affected products added · linux/linux
    Oct 14, 2026 · CVE Program (cve.org) e CISA ADP
  • Record published
    Oct 14, 2026
  • Fix documented
    Oct 14, 2026 · NIST National Vulnerability Database
  • Affected products added · linux/linux kernel
    Oct 14, 2026 · NIST National Vulnerability Database
  • CVSS changed · 5.5
    Oct 14, 2026 · NIST National Vulnerability Database
  • Source status changed · → Modified
    Oct 14, 2026 · NIST National Vulnerability Database
  • Record created in this database
    Oct 14, 2026 · Alertas do Telegram
  • 2025
  • CVE published
    Jan 15, 2025 · Linux

Source activity

Repeated readings are counted rather than listed.

  • 2× References added · Oct 14, 2026 – Oct 14, 2026
  • 1× Official description updated · Oct 14, 2026 – Oct 14, 2026

References

12 on the record

Elsewhere on this site

Linux
every CVE for this vendor
CWE-835
other pages naming this weakness

Related CVEs (same products)

  • Critical CVE-2026-99999 ipv4: validate checksum_start before completing checksum 10h
  • Unknown CVE-2026-98432 ipv4: free inet_opt and ireq_opt after an RCU grace period 10h
  • Unknown CVE-2026-98430 RDMA/efa: Keep admin queues alive while IRQ is registered 1d
  • Unknown CVE-2026-98424 wifi: cfg80211: undo netns switch if renaming the wiphy fails 1d
  • Unknown CVE-2026-98425 wifi: mac80211: don't warn when an IBSS has no channel to scan 1d
  • Unknown CVE-2026-98426 wifi: mwifiex: fix IRQ leak using wrong index in MSI-X error path 1d

Not in any source we poll

Listed rather than left blank: an empty field and an unmeasured one look identical on screen, and only one is a reason to look elsewhere.

  • No CISA SSVC assessment.
  • No confirmed IOCs, IP addresses, domains, file hashes, or malware artifacts supplied.
  • No organization-specific asset inventory, compensating-control status, or patch deployment evidence supplied.
  • No exploit packet captures, log samples, or incident case IDs supplied.

Answered from this record

Text assembled only from the fields above — no additional claims.

What should defenders know first?

CVE-2024-57884 is "mm: vmscan: account for free pages to prevent infinite Loop in throttle_direct_reclaim()", rated Medium. It affects Linux (Linux); versions are in the scope table. It is not in CISA KEV, which does not rule out exploitation. CVSS 5.5 describes technical severity. EPSS 0.21% estimates the probability of exploitation in 30 days; neither replaces your asset context. First verify whether exposed or business-critical assets run the affected versions, apply vendor fixes or mitigations, and preserve logs for review.

Comments

Moderated technical discussion. Read the community guidelines.

No comments yet.

Sign in or create an account to comment and suggest corrections.