io_uring: avoid touching inode in rw prep
authorPavel Begunkov <asml.silence@gmail.com>
Mon, 9 Aug 2021 12:04:04 +0000 (13:04 +0100)
committerJens Axboe <axboe@kernel.dk>
Mon, 23 Aug 2021 19:07:56 +0000 (13:07 -0600)
commitc97d8a0f68b30960e9c8089bc37cc3b96a96f84d
treefbad0bb9fb30d9295d296a4fbe40f84720accf4b
parentb191e2dfe5955b392bc8c0ae546dfa5a13649c38
io_uring: avoid touching inode in rw prep

If we use fixed files, we can be sure (almost) that REQ_F_ISREG is set.
However, for non-reg files io_prep_rw() still will look into inode to
double check, and that's expensive and can be avoided.

The only caveat is that it only currently works with 64+ bit
architectures, see FFS_ISREG, so we should consider that.

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