From: Hao Xu Date: Thu, 12 Aug 2021 07:47:02 +0000 (+0800) Subject: io_uring: code clean for completion_lock in io_arm_poll_handler() X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=41a5169c23ebe85fdd0b64a0b6381f486a34ef3c;p=linux.git io_uring: code clean for completion_lock in io_arm_poll_handler() We can merge two spin_unlock() operations to one since we removed some code not long ago. Signed-off-by: Hao Xu Signed-off-by: Jens Axboe --- diff --git a/fs/io_uring.c b/fs/io_uring.c index 7626cad93f604..c581c7cbb8b2c 100644 --- a/fs/io_uring.c +++ b/fs/io_uring.c @@ -5237,13 +5237,10 @@ static int io_arm_poll_handler(struct io_kiocb *req) ret = __io_arm_poll_handler(req, &apoll->poll, &ipt, mask, io_async_wake); - if (ret || ipt.error) { - spin_unlock(&ctx->completion_lock); - if (ret) - return IO_APOLL_READY; - return IO_APOLL_ABORTED; - } spin_unlock(&ctx->completion_lock); + if (ret || ipt.error) + return ret ? IO_APOLL_READY : IO_APOLL_ABORTED; + trace_io_uring_poll_arm(ctx, req, req->opcode, req->user_data, mask, apoll->poll.events); return IO_APOLL_OK;