[RFC v3 0/9] Unifying fabrics drivers

Daniel Wagner dwagner at suse.de
Thu May 4 02:12:50 PDT 2023


I've rebased on nvme-6.4 and gave it a bit of testing. Up to the last patch it seems to
work fine, at least blktests doesn't trigger any errors.

I've tried to split the pure moving code around part from the part where we need
to change some code. That means the last two patches highlight the problems I
run into with this attempt to implement the setup_transport() callback

changes:
v2:
  - move the complete ctrl state machine to fabrics.c
  - https://lore.kernel.org/linux-nvme/20230306093244.20775-1-dwagner@suse.de/ 
  
v1:
  - https://lore.kernel.org/linux-nvme/20230301082737.10021-1-dwagner@suse.de/


Daniel Wagner (9):
  nvme-rdma: stream line queue functions arguments
  nvme-rdma: factor rdma specific queue init code out
  nvme-tcp: move error and connect work to nvme_ctrl
  nvme-rdma: use error and connect work from nvme_ctrl
  nvme-fabrics: add fabric state machine
  nvme-tcp: replace state machine with generic one
  nvme-rdma: replace state machine with generic one
  nvme: move queue flags to middle layer
  nvme: introduce setup_transport()

 drivers/nvme/host/fabrics.c | 513 +++++++++++++++++++++++++
 drivers/nvme/host/fabrics.h |  24 ++
 drivers/nvme/host/nvme.h    |  19 +
 drivers/nvme/host/rdma.c    | 720 ++++++++++--------------------------
 drivers/nvme/host/tcp.c     | 706 ++++++++---------------------------
 5 files changed, 913 insertions(+), 1069 deletions(-)

-- 
2.40.0




More information about the Linux-nvme mailing list