projects
/
platform
/
kernel
/
linux-starfive.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
6567506
)
io_uring/iopoll: fix unexpected returns
author
Pavel Begunkov
<asml.silence@gmail.com>
Thu, 8 Sep 2022 15:56:54 +0000
(16:56 +0100)
committer
Jens Axboe
<axboe@kernel.dk>
Wed, 21 Sep 2022 19:14:59 +0000
(13:14 -0600)
We may propagate a positive return value of io_run_task_work() out of
io_iopoll_check(), which breaks our tests. io_run_task_work() doesn't
return anything useful for us, ignore the return value.
Fixes:
c0e0d6ba25f1
("io_uring: add IORING_SETUP_DEFER_TASKRUN")
Signed-off-by: Pavel Begunkov <asml.silence@gmail.com>
Reviewed-by: Dylan Yudaken <dylany@fb.com>
Link:
https://lore.kernel.org/r/c442bb87f79cea10b3f857cbd4b9a4f0a0493fa3.1662652536.git.asml.silence@gmail.com
Signed-off-by: Jens Axboe <axboe@kernel.dk>
io_uring/io_uring.c
patch
|
blob
|
history
diff --git
a/io_uring/io_uring.c
b/io_uring/io_uring.c
index
39dda1b
..
c6c32aa
100644
(file)
--- a/
io_uring/io_uring.c
+++ b/
io_uring/io_uring.c
@@
-1435,12
+1435,9
@@
static int io_iopoll_check(struct io_ring_ctx *ctx, long min)
u32 tail = ctx->cached_cq_tail;
mutex_unlock(&ctx->uring_lock);
-
ret =
io_run_task_work();
+ io_run_task_work();
mutex_lock(&ctx->uring_lock);
- if (ret < 0)
- break;
-
/* some requests don't go through iopoll_list */
if (tail != ctx->cached_cq_tail ||
wq_list_empty(&ctx->iopoll_list))