diff options
author | Jens Axboe <axboe@kernel.dk> | 2025-01-14 17:44:21 +0100 |
---|---|---|
committer | Jens Axboe <axboe@kernel.dk> | 2025-01-14 17:44:21 +0100 |
commit | c1c03ee7957ec178756cae09c39d77194e8cddb7 (patch) | |
tree | 13323386525453151d45687315ba45837162cc39 /drivers | |
parent | io_uring: don't touch sqd->thread off tw add (diff) | |
download | linux-c1c03ee7957ec178756cae09c39d77194e8cddb7.tar.xz linux-c1c03ee7957ec178756cae09c39d77194e8cddb7.zip |
io_uring/rsrc: fixup io_clone_buffers() error handling
Jann reports he can trigger a UAF if the target ring unregisters
buffers before the clone operation is fully done. And additionally
also an issue related to node allocation failures. Both of those
stemp from the fact that the cleanup logic puts the buffers manually,
rather than just relying on io_rsrc_data_free() doing it. Hence kill
the manual cleanup code and just let io_rsrc_data_free() handle it,
it'll put the nodes appropriately.
Reported-by: Jann Horn <jannh@google.com>
Fixes: 3597f2786b68 ("io_uring/rsrc: unify file and buffer resource tables")
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Diffstat (limited to 'drivers')
0 files changed, 0 insertions, 0 deletions