io_uring: stop using io_wq_work as an fd placeholder
authorJens Axboe <axboe@kernel.dk>
Mon, 11 Apr 2022 01:05:09 +0000 (19:05 -0600)
committerJens Axboe <axboe@kernel.dk>
Mon, 11 Apr 2022 23:06:20 +0000 (17:06 -0600)
commit82733d168cbd3fe9dab603f05894316b99008924
treeeb34dfacd2df84b3683b2cc7bd66c0f2d231a57b
parent2804ecd8d3e3730b4f999cc1ff4b2441e1f4d513
io_uring: stop using io_wq_work as an fd placeholder

There are two reasons why this isn't the best idea:

- It's an odd area to grab a bit of storage space, hence it's an odd area
  to grab storage from.
- It puts the 3rd io_kiocb cacheline into the hot path, where normal hot
  path just needs the first two.

Use 'cflags' for joint fd/cflags storage. We only need fd until we
successfully issue, and we only need cflags once a request is done and is
completed.

Fixes: 6bf9c47a3989 ("io_uring: defer file assignment")
Signed-off-by: Jens Axboe <axboe@kernel.dk>
fs/io-wq.h
fs/io_uring.c