[PATCH v3 0/4] nvme: add csi, ms and nuse to sysfs

From: Daniel Wagner
Date: Wed Dec 06 2023 - 03:12:54 EST


I'v dropped the RFC status and tested it lot more which found an obvious bug.
When initializating the disk in nvme_alloc_ns, the ns->head pointer was still
NULL. This is why I added the 'nvme: initialize head before namespace' patch.

I can't really explain why my testing didn't catch this earlier. Anyway, I
rebuild my test setup completely to make sure I got the most obvious things
tested. The blktests with loop and nvme-tcp pass, nvme-rdma breaks but so does
the base line test. So not a regression by this series.

Thanks,
Daniel

libnvme changes:
https://github.com/igaw/libnvme/tree/tree-no-cmd

changes:
v3:
- cut overlong lines shorter
- fixed disk (queuedata) initialization order
- more testing with blktest
- added nuse ratelimit
- added reviewed tags

v2:
- moved ns id data to nvme_ns_head
- dropped ds, nsze
- https://lore.kernel.org/linux-nvme/20231201092735.28592-1-dwagner@xxxxxxx/

v1:
- initial version
- https://lore.kernel.org/linux-nvme/20231127103208.25748-1-dwagner@xxxxxxx/

Daniel Wagner (4):
nvme: lookup ctrl from request instead from namespace
nvme: initialize head before namespace
nvme: move ns id info to struct nvme_ns_head
nvme: add csi, ms and nuse to sysfs

drivers/nvme/host/apple.c | 4 +-
drivers/nvme/host/core.c | 279 +++++++++++++++++++--------------
drivers/nvme/host/fc.c | 4 +-
drivers/nvme/host/ioctl.c | 20 +--
drivers/nvme/host/multipath.c | 31 ++--
drivers/nvme/host/nvme.h | 62 ++++----
drivers/nvme/host/rdma.c | 10 +-
drivers/nvme/host/sysfs.c | 31 ++++
drivers/nvme/host/tcp.c | 8 +-
drivers/nvme/host/zns.c | 34 ++--
drivers/nvme/target/loop.c | 4 +-
drivers/nvme/target/passthru.c | 8 +-
12 files changed, 291 insertions(+), 204 deletions(-)

--
2.43.0