From ddd2752899873a0c18b59439001b88731bc8de02 Mon Sep 17 00:00:00 2001 From: Jens Axboe Date: Thu, 3 Apr 2025 10:48:49 -0600 Subject: [PATCH] io_uring/filetable: ensure node switch is always done, if needed No upstream patch exists for this issue, as it was introduced by a stable backport. A previous backport relied on other code changes in the io_uring file table and resource node handling, which means that sometimes a resource node switch can get missed. For 6.1-stable, that code is still in io_install_fixed_file(), so ensure we fall-through to that case for the success path too. Fixes: a3812a47a320 ("io_uring: drop any code related to SCM_RIGHTS") Signed-off-by: Jens Axboe Signed-off-by: Greg Kroah-Hartman --- io_uring/filetable.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/io_uring/filetable.c b/io_uring/filetable.c index 4660cb89ea9f..a64b4df0ac9c 100644 --- a/io_uring/filetable.c +++ b/io_uring/filetable.c @@ -98,7 +98,7 @@ static int io_install_fixed_file(struct io_ring_ctx *ctx, struct file *file, *io_get_tag_slot(ctx->file_data, slot_index) = 0; io_fixed_file_set(file_slot, file); io_file_bitmap_set(&ctx->file_table, slot_index); - return 0; + ret = 0; err: if (needs_switch) io_rsrc_node_switch(ctx, ctx->file_data);