From: Pavel Begunkov Date: Mon, 25 Jan 2021 11:42:20 +0000 (+0000) Subject: io_uring: ensure only sqo_task has file notes X-Git-Tag: accepted/tizen/unified/20230118.172025~7716^2~98 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=ecfc8492820732be652146280912554ced62c32b;p=platform%2Fkernel%2Flinux-rpi.git io_uring: ensure only sqo_task has file notes For SQPOLL io_uring we want to have only one file note held by sqo_task. Add a warning to make sure it holds. It's deep in io_uring_add_task_file() out of hot path, so shouldn't hurt. Signed-off-by: Pavel Begunkov Signed-off-by: Jens Axboe --- diff --git a/fs/io_uring.c b/fs/io_uring.c index b05d374..68bf2c8 100644 --- a/fs/io_uring.c +++ b/fs/io_uring.c @@ -9099,6 +9099,10 @@ static int io_uring_add_task_file(struct io_ring_ctx *ctx, struct file *file) fput(file); return ret; } + + /* one and only SQPOLL file note, held by sqo_task */ + WARN_ON_ONCE((ctx->flags & IORING_SETUP_SQPOLL) && + current != ctx->sqo_task); } tctx->last = file; }