From: Stefan Bühler Date: Wed, 24 Apr 2019 21:54:22 +0000 (+0200) Subject: io_uring: remove unnecessary barrier after unsetting IORING_SQ_NEED_WAKEUP X-Git-Tag: v5.1~12^2~7 X-Git-Url: https://www.infradead.org/git/?a=commitdiff_plain;h=62977281a6384d3904c02272a638cc3ac3bac54d;p=users%2Fhch%2Fblock.git io_uring: remove unnecessary barrier after unsetting IORING_SQ_NEED_WAKEUP There is no operation to order with afterwards, and removing the flag is not critical in any way. There will always be a "race condition" where the application will trigger IORING_ENTER_SQ_WAKEUP when it isn't actually needed. Signed-off-by: Stefan Bühler Signed-off-by: Jens Axboe --- diff --git a/fs/io_uring.c b/fs/io_uring.c index 2ebc33cc907b..77b247b5d10b 100644 --- a/fs/io_uring.c +++ b/fs/io_uring.c @@ -1969,13 +1969,11 @@ static int io_sq_thread(void *data) finish_wait(&ctx->sqo_wait, &wait); ctx->sq_ring->flags &= ~IORING_SQ_NEED_WAKEUP; - smp_wmb(); continue; } finish_wait(&ctx->sqo_wait, &wait); ctx->sq_ring->flags &= ~IORING_SQ_NEED_WAKEUP; - smp_wmb(); } i = 0;