[PATCHv8 0/6] write hints for nvme fdp

Keith Busch
2024-10-17T16:11:14Z

From: Keith Busch <kbusch@kernel.org>

Changes from v7:

Limits io_uring per-io hints to raw block, and only if the block
device registers a new queue limit indicating support for it.

The per-io hints are opaque to the kernel.

Minor changelog and code organization changes.

I don't really understand the io_uring suggestions, so I just made the
write_hint a first class field without the "meta" indirection. It's
kind of like ioprio, which has it's own field too. Actually, might be
neat if we could use ioprio since it already has a "hints" field that
is currently only used by command duration limits.

Kanchan Joshi (3):
block, fs: restore kiocb based write hint processing
io_uring: enable per-io hinting capability
nvme: enable FDP support

Keith Busch (3):
block: use generic u16 for write hints
block: introduce max_write_hints queue limit
fs: introduce per-io hint support flag

Documentation/ABI/stable/sysfs-block | 7 +++
block/blk-settings.c | 3 +
block/blk-sysfs.c | 3 +
block/fops.c | 10 ++--
drivers/nvme/host/core.c | 82 ++++++++++++++++++++++++++++
drivers/nvme/host/nvme.h | 5 ++
fs/aio.c | 1 +
fs/cachefiles/io.c | 1 +
fs/direct-io.c | 2 +-
fs/iomap/direct-io.c | 2 +-
include/linux/blk-mq.h | 3 +-
include/linux/blk_types.h | 2 +-
include/linux/blkdev.h | 12 ++++
include/linux/fs.h | 10 ++++
include/linux/nvme.h | 19 +++++++
include/uapi/linux/io_uring.h | 4 ++
io_uring/rw.c | 10 +++-
17 files changed, 166 insertions(+), 10 deletions(-)

--
2.43.5