UPSTREAM: 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. Change-Id: I3c5abbf6a337ec1958fd6600c5feb44fb61a5772 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> Bug: 268174392 (cherry picked from commit ea528eca) Signed-off-by:
Greg Kroah-Hartman <gregkh@google.com>
Loading
Please sign in to comment