Linux: netfs: zero gaps in read-gaps folio to avoid writing back stale data
What fixes it
- 512eaf01ffabf4258e945016b50df5aed940b705LinuxCVE List
- 2a62fe628a877c249c8286b157ee99d82840d9dcLinuxCVE List
- 8db55c5cd831a786a1a2a2d391aa80354535a353LinuxCVE List
A fixed version on one release line is not the upgrade target for every line. Check your exact version and any vendor backports.
Description
In the Linux kernel, the following vulnerability has been resolved:
netfs: zero gaps in read-gaps folio to avoid writing back stale data
netfs_read_gaps() leaves gaps around a streaming write's dirty region unread on the server side, so a short/EOF response there left stale folio content that later got written back.
Zero it after the read completes, not before: netfs_wait_for_read() returns rreq->transferred once ret >= 0, so build an iterator over the same bvec array the read used, advance past ret, and zero the rest. The dirty region already maps to sink pages in that array rather than the real folio, so this can't touch it, and only the actual shortfall gets zeroed instead of the whole gap upfront.
Text from CVE List
Affected versions 8
- Linuxaffected: ee4cdf7ba857a894ad1650d6ab77669cbbfa329e before 512eaf01ffabf4258e945016b50df5aed940b705CVE List
- Linuxaffected: ee4cdf7ba857a894ad1650d6ab77669cbbfa329e before 2a62fe628a877c249c8286b157ee99d82840d9dcCVE List
- Linuxaffected: ee4cdf7ba857a894ad1650d6ab77669cbbfa329e before 8db55c5cd831a786a1a2a2d391aa80354535a353CVE List
- Linuxaffected: 6.12CVE List
- Linuxunaffected: all versions before 6.12CVE List
- Linuxunaffected: 6.18.56 through 6.18.*CVE List
- Linuxunaffected: 7.2.10 through 7.2.*CVE List
- Linuxunaffected: 7.3CVE List