CVE-2026-64069

Summary

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

netfs: Fix cancellation of a DIO and single read subrequests

When the preparation of a new subrequest for a read fails, if the subrequest has already been added to the stream->subrequests list, it can't simply be put and abandoned as the collector may see it. Also, if it hasn't been queued yet, it has two outstanding refs that both need to be put. Both DIO read and single-read dispatch fail at this; further, both differ in the order they do things to the way buffered read works.

Fix cancellation of both DIO-read and single-read subrequests that failed preparation by the following steps:

(1) Harmonise all three reads (buffered, dio, single) to queue the subreq before prepping it.

(2) Make all three call netfs_queue_read() to do the queuing.

(3) Set NETFS_RREQ_ALL_QUEUED independently of the queuing as we don't know the length of the subreq at this point.

(4) In all cases, set the error and NETFS_SREQ_FAILED flag on the subreq and then call netfs_read_subreq_terminated() to deal with it. This will pass responsibility off to the collector for dealing with it.

Affected Software

VendorProductVersion RangeStatus
LinuxLinuxe2d46f2ec332533816417b60933954173f602121 < 5366199be46fb53de62861721d34ba816e7e440eaffected
LinuxLinuxe2d46f2ec332533816417b60933954173f602121 < f73372a4c6900d117f8e903fe10b62692f95e6c4affected
LinuxLinuxe2d46f2ec332533816417b60933954173f602121 < 6f0f7ac1915abc0d202f0eb4b003a6548a5ba60daffected
LinuxLinux6.14affected
LinuxLinux0 < 6.14unaffected
LinuxLinux6.18.34 <= 6.18.*unaffected
LinuxLinux7.0.11 <= 7.0.*unaffected
LinuxLinux7.1 <= *unaffected

Weaknesses

References