io_uring: update kiocb->ki_pos at execution time
commit d34e1e5b upstream. Update kiocb->ki_pos at execution time rather than in io_prep_rw(). io_prep_rw() happens before the job is enqueued to a worker and so the offset might be read multiple times before being executed once. Ensures that the file position in a set of _linked_ SQEs will be only obtained after earlier SQEs have completed, and so will include their incremented file position. Signed-off-by:Dylan Yudaken <dylany@fb.com> Reviewed-by:
Pavel Begunkov <asml.silence@gmail.com> Signed-off-by:
Jens Axboe <axboe@kernel.dk> Signed-off-by:
Sasha Levin <sashal@kernel.org>
Loading
-
mentioned in commit 0264c087
-
mentioned in commit ae4fba1e
-
mentioned in commit d85dabad
-
mentioned in commit 7d932dbe
-
mentioned in commit 554fd026
-
mentioned in commit 91fb90e9
-
mentioned in commit 11a4d38a
-
mentioned in commit 47179f7d
-
mentioned in commit 51556245
-
mentioned in commit 51556245
Please sign in to comment