]> git.baikalelectronics.ru Git - kernel.git/commit
io_uring: dont overlap internal and user req flags
authorPavel Begunkov <asml.silence@gmail.com>
Tue, 27 Apr 2021 15:13:52 +0000 (16:13 +0100)
committerJens Axboe <axboe@kernel.dk>
Thu, 29 Apr 2021 19:26:18 +0000 (13:26 -0600)
commit1c735d96f9e8dd104c1bdc4affbdfbf71ee4be26
treeddee4b3969776070de71d1e941c676bc19bd1e5c
parenta2f5480233f0076bffc41e0a9ff9a0da12c79156
io_uring: dont overlap internal and user req flags

CQE flags take one byte that we store in req->flags together with other
REQ_F_* internal flags. CQE flags are copied directly into req and then
verified that requires some handling on failures, e.g. to make sure that
that copy doesn't set some of the internal flags.

Move all internal flags to take bits after the first byte, so we don't
need extra handling and make it safer overall.

Signed-off-by: Pavel Begunkov <asml.silence@gmail.com>
Link: https://lore.kernel.org/r/b8b5b02d1ab9d786fcc7db4a3fe86db6b70b8987.1619536280.git.asml.silence@gmail.com
Signed-off-by: Jens Axboe <axboe@kernel.dk>
fs/io_uring.c