PT-2026-64647 · Linux · Linux
CVE-2026-64426
·
Published
2026-07-25
·
Updated
2026-07-25
None
No severity ratings or metrics are available. When they are, we'll update the corresponding info on the page.
In the Linux kernel, the following vulnerability has been resolved:
io uring/nop: fix file reference leak with IOSQE FIXED FILE
NOP file-acquisition support choses between a fixed (registered) file and
a normal fget()'d file based on its own IORING NOP FIXED FILE flag in
sqe->nop flags. However, a request's REQ F FIXED FILE is set
independently from the generic IOSQE FIXED FILE sqe flag during request
init, before the issue handler runs.
If a NOP is submitted with IOSQE FIXED FILE set (so REQ F FIXED FILE is
set) but without IORING NOP FIXED FILE, io nop() takes the normal path
and grabs a real reference via io file get normal(). On completion,
io put file() only drops the reference when REQ F FIXED FILE is clear,
so the fget()'d file is never released and leaks:
BUG: memory leak
unreferenced object 0xffff88800f42c240 (size 176):
kmem cache alloc noprof+0x358/0x440
alloc empty file+0x57/0x180
path openat+0x44/0x1e50
do file open+0x121/0x200
do sys openat2+0xa7/0x150
x64 sys openat+0x82/0xf0
Decide between fixed and normal file acquisition from REQ F FIXED FILE,
the same way io assign file() does for every other opcode, and fold
IORING NOP FIXED FILE into REQ F FIXED FILE at prep time.
Found an issue in the description? Have something to add? Feel free to write us 👾
Related Identifiers
Affected Products
Linux