io_uring: silence variable ‘prev’ set but not used warning
authorJens Axboe <axboe@kernel.dk>
Thu, 9 Mar 2023 16:51:13 +0000 (09:51 -0700)
committerJens Axboe <axboe@kernel.dk>
Thu, 9 Mar 2023 17:10:58 +0000 (10:10 -0700)
commitfa780334a8c392d959ae05eb19f2410b3a1e6cb0
treecae12f065f6e323f3c82a252ea8aaef49f31abb5
parent03b3d6be73e81ddb7c2930d942cdd17f4cfd5ba5
io_uring: silence variable ‘prev’ set but not used warning

If io_uring.o is built with W=1, it triggers a warning:

io_uring/io_uring.c: In function ‘__io_submit_flush_completions’:
io_uring/io_uring.c:1502:40: warning: variable ‘prev’ set but not used [-Wunused-but-set-variable]
 1502 |         struct io_wq_work_node *node, *prev;
      |                                        ^~~~

which is due to the wq_list_for_each() iterator always keeping a 'prev'
variable. Most users need this to remove an entry from a list, for
example, but __io_submit_flush_completions() never does that.

Add a basic helper that doesn't track prev instead, and use that in
that function.

Reported-by: Vincenzo Palazzo <vincenzopalazzodev@gmail.com>
Reviewed-by: Vincenzo Palazzo <vincenzopalazzodev@gmail.com>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
io_uring/io_uring.c
io_uring/slist.h