diff options
| author | Jens Axboe <axboe@kernel.dk> | 2025-04-03 10:48:49 -0600 |
|---|---|---|
| committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2025-04-10 14:33:41 +0200 |
| commit | ddd2752899873a0c18b59439001b88731bc8de02 (patch) | |
| tree | b16f3b5339c889c2c0874ed407a645f6dd5d8dd2 | |
| parent | be8a0decd0b59a52a07276f9ef3b33ef820b2179 (diff) | |
| download | linux-ddd2752899873a0c18b59439001b88731bc8de02.tar.gz linux-ddd2752899873a0c18b59439001b88731bc8de02.tar.bz2 linux-ddd2752899873a0c18b59439001b88731bc8de02.zip | |
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 <axboe@kernel.dk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
| -rw-r--r-- | io_uring/filetable.c | 2 |
1 files changed, 1 insertions, 1 deletions
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); |
