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

net: page_pool: fix use-after-free in page_pool_recycle_ring_bulk()

With CONFIG_PAGE_POOL_STATS=y, page_pool_recycle_ring_bulk() updates
the recycle stats after dropping the producer lock. If it just recycled
the last inflight netmems of a pool being destroyed, page_pool_release()
can pass its producer-lock barrier and free the pool before
recycle_stat_add() runs.

Commit fcc680a647ba7 ("page_pool: allow mixing PPs within one bulk")
moved this stat update after the unlock. Commit 271683bb2cf32
("page_pool: Fix use-after-free in page_pool_recycle_in_ring") later
added the barrier, but only fixed page_pool_recycle_in_ring(). Move
the update back under the lock.
Published: 2026-10-18
Score: 4.7 Medium
EPSS: < 1% Very Low
KEV: No
Impact: Memory corruption due to use‑after‑free
Action: Apply patch
AI Analysis

Impact

The vulnerability is a use‑after‑free bug in the Linux kernel’s page_pool_recycle_ring_bulk function. When CONFIG_PAGE_POOL_STATS is enabled, the function updates recycle statistics after releasing the producer lock, allowing page_pool_release to free the memory pool before the statistics update completes. The resulting memory access can corrupt kernel data. Based on the description, this corruption could lead to system instability or denial of service. The flaw is a classic use‑after‑free (CWE‑825).

Affected Systems

The bug affects Linux kernel implementations that enable the page_pool stats feature (CONFIG_PAGE_POOL_STATS=y) and contain the impacted code paths. No specific kernel version is supplied, so any kernel derived from the repositories that incorporate the buggy code is potentially impacted until the fixes from commits fcc680a647ba7 and 271683bb2cf32 are included. The affected product is the Linux kernel, as identified by the vendor Linux.

Risk and Exploitability

The CVSS score is 4.7, the EPSS score indicates a very low probability of exploitation (< 1%), and the vulnerability is not listed in CISA's KEV catalog. Exposing the bug would require triggering the bulk recycle logic in a network context. The likely attack vector is local or privileged during network traffic processing. The risk is moderate, largely limited to environments where network traffic is processed by a kernel with early release of the pool. Based on the description, the likely impact could be memory corruption leading to system instability or denial of service.

Generated by OpenCVE AI on October 24, 2026 at 04:28 UTC.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Update the kernel to a version that includes the fix introduced by commits fcc680a647ba7 and 271683bb2cf32.
  • If a kernel upgrade is not immediately possible, disable the CONFIG_PAGE_POOL_STATS kernel configuration option to prevent the statistics update path from executing.
  • Reboot or restart affected networking services after applying the patch or disabling the feature to ensure the bug is cleared from memory.

Generated by OpenCVE AI on October 24, 2026 at 04:28 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Sat, 24 Oct 2026 03:00:00 +0000

Type Values Removed Values Added
Weaknesses CWE-125

Sat, 24 Oct 2026 00:30:00 +0000

Type Values Removed Values Added
Weaknesses CWE-825
References
Metrics threat_severity

None

cvssV3_1

{'score': 4.7, 'vector': 'CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:N/I:N/A:H'}

threat_severity

Moderate


Sun, 18 Oct 2026 22:00:00 +0000

Type Values Removed Values Added
Weaknesses CWE-125

Sun, 18 Oct 2026 16:00:00 +0000

Type Values Removed Values Added
Description In the Linux kernel, the following vulnerability has been resolved: net: page_pool: fix use-after-free in page_pool_recycle_ring_bulk() With CONFIG_PAGE_POOL_STATS=y, page_pool_recycle_ring_bulk() updates the recycle stats after dropping the producer lock. If it just recycled the last inflight netmems of a pool being destroyed, page_pool_release() can pass its producer-lock barrier and free the pool before recycle_stat_add() runs. Commit fcc680a647ba7 ("page_pool: allow mixing PPs within one bulk") moved this stat update after the unlock. Commit 271683bb2cf32 ("page_pool: Fix use-after-free in page_pool_recycle_in_ring") later added the barrier, but only fixed page_pool_recycle_in_ring(). Move the update back under the lock.
Title net: page_pool: fix use-after-free in page_pool_recycle_ring_bulk()
First Time appeared Linux
Linux linux Kernel
CPEs cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
Vendors & Products Linux
Linux linux Kernel
References

Subscriptions

Linux Linux Kernel
cve-icon MITRE

Status: PUBLISHED

Assigner: Linux

Published:

Updated: 2026-10-19T09:25:57.688Z

Reserved: 2026-09-25T10:25:14.371Z

Link: CVE-2026-98804

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-10-18T16:17:34.470

Modified: 2026-10-19T10:19:44.457

Link: CVE-2026-98804

cve-icon Redhat

Severity : Moderate

Publid Date: 2026-10-18T00:00:00Z

Links: CVE-2026-98804 - Bugzilla

cve-icon OpenCVE Enrichment

Updated: 2026-10-24T04:30:08Z

Weaknesses
  • CWE-825

    Expired Pointer Dereference