io_uring/rsrc: allow cloning at an offset
authorJens Axboe <axboe@kernel.dk>
Tue, 29 Oct 2024 00:43:13 +0000 (18:43 -0600)
committerJens Axboe <axboe@kernel.dk>
Thu, 31 Oct 2024 14:47:56 +0000 (08:47 -0600)
commit6f86c99e302c820b759093294ac65936e1418559
treecd46a8306368f08663f3114cc6e2b70ed50c017f
parent661768085e99aad356ebc77d78ac41fd02eccbe3
io_uring/rsrc: allow cloning at an offset

Right now buffer cloning is an all-or-nothing kind of thing - either the
whole table is cloned from a source to a destination ring, or nothing at
all.

However, it's not always desired to clone the whole thing. Allow for
the application to specify a source and destination offset, and a
number of buffers to clone. If the destination offset is non-zero, then
allocate sparse nodes upfront.

Signed-off-by: Jens Axboe <axboe@kernel.dk>
include/uapi/linux/io_uring.h
io_uring/rsrc.c