[RFC v3 0/9] Unifying fabrics drivers

From: Daniel Wagner
Date: Thu May 04 2023 - 05:13:09 EST


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@xxxxxxx/

v1:
- https://lore.kernel.org/linux-nvme/20230301082737.10021-1-dwagner@xxxxxxx/


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