summaryrefslogtreecommitdiff
path: root/include/linux/debugobjects.h
diff options
context:
space:
mode:
authorguzebing <guzebing1612@gmail.com>2026-06-08 21:33:16 +0800
committerJens Axboe <axboe@kernel.dk>2026-06-16 10:06:49 -0600
commit1fe703cc708f19209ae8e6261247483db723c221 (patch)
tree194673c2696dbd9ac4ff74424669e19577eae7f1 /include/linux/debugobjects.h
parentbdc2fc388c348ee14b4f984ff75f2ea440cefd44 (diff)
io_uring/register: preserve SQ array entries on resize
Ring resizing copies pending SQEs from the old SQE array into the new one so submissions queued before the resize can still be consumed afterwards. That copy currently walks the SQ head/tail range directly. This is only correct when there is no SQ array indirection. With a regular SQ array, each pending SQ entry contains an index into the SQE array. After resize, ctx->sq_array is repointed at the newly allocated array, so pending entries lose their old logical-to-physical mapping and may submit the wrong SQE. Remember the old and new SQ arrays while migrating pending SQ entries. For each pending entry, copy the SQE selected by the old array into the new destination slot and rebuild the new array entry to point at the copied SQE. Keep invalid user-provided entries invalid so the normal submission path still drops them after resize. Fixes: 79cfe9e59c2a1 ("io_uring/register: add IORING_REGISTER_RESIZE_RINGS") Signed-off-by: guzebing <guzebing1612@gmail.com> Link: https://patch.msgid.link/20260608133316.3656440-1-guzebing1612@gmail.com Signed-off-by: Jens Axboe <axboe@kernel.dk>
Diffstat (limited to 'include/linux/debugobjects.h')
0 files changed, 0 insertions, 0 deletions