io_uring: simplify io_task_match()
authorPavel Begunkov <asml.silence@gmail.com>
Tue, 9 Feb 2021 04:47:35 +0000 (04:47 +0000)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sat, 13 Feb 2021 12:54:54 +0000 (13:54 +0100)
[ Upstream commit 06de5f5973c641c7ae033f133ecfaaf64fe633a6 ]

If IORING_SETUP_SQPOLL is set all requests belong to the corresponding
SQPOLL task, so skip task checking in that case and always match.

Signed-off-by: Pavel Begunkov <asml.silence@gmail.com>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
fs/io_uring.c

index 3b6307f..e08ad56 100644 (file)
@@ -1472,11 +1472,7 @@ static bool io_task_match(struct io_kiocb *req, struct task_struct *tsk)
 
        if (!tsk || req->task == tsk)
                return true;
-       if (ctx->flags & IORING_SETUP_SQPOLL) {
-               if (ctx->sq_data && req->task == ctx->sq_data->thread)
-                       return true;
-       }
-       return false;
+       return (ctx->flags & IORING_SETUP_SQPOLL);
 }
 
 /*