[PATCH v6 0/2] nvme-tcp: allow setting per-queue io_cpu through sysfs

Saravanan D saravanand at crusoe.ai
Fri Oct 23 16:04:24 PDT 2026


On hosts that partition their CPUs after connect time, the connect
time io_cpu selection can place a queue's socket work on CPUs owned by
another workload. This series lets a control plane set each queue's
io_cpu through /sys/class/nvme/nvmeX/queues/<qid>/. Patch 1 adds the
core helpers, patch 2 the nvme-tcp attributes.

Changes since v5 [1]:
- The queue directory is added once the io_cpu selection has run, so
  readers never see a placement that is about to change (Sashiko).
- Rebased onto nvme-7.4, and the ABI entry targets 7.5.

managed stays per queue, as discussed in [1]. A blktests patch,
nvme/075, covers the interface and follows in this thread.

[1] https://lore.kernel.org/linux-nvme/20261018010059.83120-1-saravanand@crusoe.ai/

Saravanan D (2):
  nvme: add per-queue sysfs directories
  nvme-tcp: allow setting per-queue io_cpu through sysfs

 Documentation/ABI/stable/sysfs-nvme |  31 +++++
 drivers/nvme/host/core.c            |   6 +
 drivers/nvme/host/nvme.h            |  23 ++++
 drivers/nvme/host/sysfs.c           |  88 ++++++++++++++
 drivers/nvme/host/tcp.c             | 172 ++++++++++++++++++++++++----
 5 files changed, 300 insertions(+), 20 deletions(-)


base-commit: aaedcff9014876387504a8b92d227766cb95015c
-- 
2.55.0




More information about the Linux-nvme mailing list