]> git.ipfire.org Git - thirdparty/linux.git/commit
io_uring/kbuf: fix memory leak if io_buffer_add_list fails
authorJens Axboe <axboe@kernel.dk>
Thu, 5 Feb 2026 15:38:20 +0000 (08:38 -0700)
committerJens Axboe <axboe@kernel.dk>
Thu, 5 Feb 2026 18:13:16 +0000 (11:13 -0700)
commit442ae406603a94f1a263654494f425302ceb0445
treee50742111f5d48d5e40a40879aa072bfe2f975ff
parentccd18ce290726053faff75b6fc3e541301ac99f9
io_uring/kbuf: fix memory leak if io_buffer_add_list fails

io_register_pbuf_ring() ignores the return value of io_buffer_add_list(),
which can fail if xa_store() returns an error (e.g., -ENOMEM). When this
happens, the function returns 0 (success) to the caller, but the
io_buffer_list structure is neither added to the xarray nor freed.

In practice this requires failure injection to hit, hence not a real
issue. But it should get fixed up none the less.

Fixes: c7fb19428d67 ("io_uring: add support for ring mapped supplied buffers")
Signed-off-by: Jens Axboe <axboe@kernel.dk>
io_uring/kbuf.c