Skip to content

Commit 63166b8

Browse files
xue01-heaxboe
authored andcommitted
io_uring/uring_cmd: fix hybrid polling initialization issue
Modify the check for whether the timer is initialized during IO transfer when passthrough is used with hybrid polling, to ensure that it's always setup correctly. Cc: stable@vger.kernel.org Fixes: 01ee194 ("io_uring: add support for hybrid IOPOLL") Signed-off-by: hexue <xue01.he@samsung.com> Link: https://lore.kernel.org/r/20250512052025.293031-1-xue01.he@samsung.com Signed-off-by: Jens Axboe <axboe@kernel.dk>
1 parent 92835ce commit 63166b8

File tree

1 file changed

+5
-0
lines changed

1 file changed

+5
-0
lines changed

io_uring/uring_cmd.c

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -254,6 +254,11 @@ int io_uring_cmd(struct io_kiocb *req, unsigned int issue_flags)
254254
return -EOPNOTSUPP;
255255
issue_flags |= IO_URING_F_IOPOLL;
256256
req->iopoll_completed = 0;
257+
if (ctx->flags & IORING_SETUP_HYBRID_IOPOLL) {
258+
/* make sure every req only blocks once */
259+
req->flags &= ~REQ_F_IOPOLL_STATE;
260+
req->iopoll_start = ktime_get_ns();
261+
}
257262
}
258263

259264
ret = file->f_op->uring_cmd(ioucmd, issue_flags);

0 commit comments

Comments
 (0)