diff mbox series

[for-next,03/10] io_uring: fix io_poll_remove_all clang warnings

Message ID f11d21dcdf9233e0eeb15fa13b858a05a78eb310.1655684496.git.asml.silence@gmail.com (mailing list archive)
State New
Headers show
Series 5.20 patches | expand

Commit Message

Pavel Begunkov June 20, 2022, 12:25 a.m. UTC
clang complains on bitwise operations with bools, add a bit more
verbosity to better show that we want to call io_poll_remove_all_table()
twice but with different arguments.

Reported-by: Nathan Chancellor <nathan@kernel.org>
Signed-off-by: Pavel Begunkov <asml.silence@gmail.com>
---
 io_uring/poll.c | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

Comments

Nathan Chancellor June 21, 2022, 3:40 p.m. UTC | #1
On Mon, Jun 20, 2022 at 01:25:54AM +0100, Pavel Begunkov wrote:
> clang complains on bitwise operations with bools, add a bit more
> verbosity to better show that we want to call io_poll_remove_all_table()
> twice but with different arguments.
> 
> Reported-by: Nathan Chancellor <nathan@kernel.org>
> Signed-off-by: Pavel Begunkov <asml.silence@gmail.com>

Thank you for sending the patch! Apologies that I didn't do it but I
decided to actually take a full weekend off for once :) Looks like Jens
already applied it but just for the record:

Reviewed-by: Nathan Chancellor <nathan@kernel.org>

> ---
>  io_uring/poll.c | 7 +++++--
>  1 file changed, 5 insertions(+), 2 deletions(-)
> 
> diff --git a/io_uring/poll.c b/io_uring/poll.c
> index d4bfc6d945cf..9af6a34222a9 100644
> --- a/io_uring/poll.c
> +++ b/io_uring/poll.c
> @@ -589,8 +589,11 @@ __cold bool io_poll_remove_all(struct io_ring_ctx *ctx, struct task_struct *tsk,
>  			       bool cancel_all)
>  	__must_hold(&ctx->uring_lock)
>  {
> -	return io_poll_remove_all_table(tsk, &ctx->cancel_table, cancel_all) |
> -	       io_poll_remove_all_table(tsk, &ctx->cancel_table_locked, cancel_all);
> +	bool ret;
> +
> +	ret = io_poll_remove_all_table(tsk, &ctx->cancel_table, cancel_all);
> +	ret |= io_poll_remove_all_table(tsk, &ctx->cancel_table_locked, cancel_all);
> +	return ret;
>  }
>  
>  static struct io_kiocb *io_poll_find(struct io_ring_ctx *ctx, bool poll_only,
> -- 
> 2.36.1
>
diff mbox series

Patch

diff --git a/io_uring/poll.c b/io_uring/poll.c
index d4bfc6d945cf..9af6a34222a9 100644
--- a/io_uring/poll.c
+++ b/io_uring/poll.c
@@ -589,8 +589,11 @@  __cold bool io_poll_remove_all(struct io_ring_ctx *ctx, struct task_struct *tsk,
 			       bool cancel_all)
 	__must_hold(&ctx->uring_lock)
 {
-	return io_poll_remove_all_table(tsk, &ctx->cancel_table, cancel_all) |
-	       io_poll_remove_all_table(tsk, &ctx->cancel_table_locked, cancel_all);
+	bool ret;
+
+	ret = io_poll_remove_all_table(tsk, &ctx->cancel_table, cancel_all);
+	ret |= io_poll_remove_all_table(tsk, &ctx->cancel_table_locked, cancel_all);
+	return ret;
 }
 
 static struct io_kiocb *io_poll_find(struct io_ring_ctx *ctx, bool poll_only,