Skip to content

Commit 872d26a

Browse files
Sagi GrimbergChristoph Hellwig
Sagi Grimberg
authored and
Christoph Hellwig
committed
nvmet-tcp: add NVMe over TCP target driver
This patch implements the TCP transport driver for the NVMe over Fabrics target stack. This allows exporting NVMe over Fabrics functionality over good old TCP/IP. The driver implements the TP 8000 of how nvme over fabrics capsules and data are encapsulated in nvme-tcp pdus and exchaged on top of a TCP byte stream. nvme-tcp header and data digest are supported as well. Signed-off-by: Sagi Grimberg <[email protected]> Signed-off-by: Roy Shterman <[email protected]> Signed-off-by: Solganik Alexander <[email protected]> Signed-off-by: Christoph Hellwig <[email protected]>
1 parent fc221d0 commit 872d26a

File tree

3 files changed

+1749
-0
lines changed

3 files changed

+1749
-0
lines changed

drivers/nvme/target/Kconfig

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -60,3 +60,13 @@ config NVME_TARGET_FCLOOP
6060
to test NVMe-FC transport interfaces.
6161

6262
If unsure, say N.
63+
64+
config NVME_TARGET_TCP
65+
tristate "NVMe over Fabrics TCP target support"
66+
depends on INET
67+
depends on NVME_TARGET
68+
help
69+
This enables the NVMe TCP target support, which allows exporting NVMe
70+
devices over TCP.
71+
72+
If unsure, say N.

drivers/nvme/target/Makefile

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,10 +5,12 @@ obj-$(CONFIG_NVME_TARGET_LOOP) += nvme-loop.o
55
obj-$(CONFIG_NVME_TARGET_RDMA) += nvmet-rdma.o
66
obj-$(CONFIG_NVME_TARGET_FC) += nvmet-fc.o
77
obj-$(CONFIG_NVME_TARGET_FCLOOP) += nvme-fcloop.o
8+
obj-$(CONFIG_NVME_TARGET_TCP) += nvmet-tcp.o
89

910
nvmet-y += core.o configfs.o admin-cmd.o fabrics-cmd.o \
1011
discovery.o io-cmd-file.o io-cmd-bdev.o
1112
nvme-loop-y += loop.o
1213
nvmet-rdma-y += rdma.o
1314
nvmet-fc-y += fc.o
1415
nvme-fcloop-y += fcloop.o
16+
nvmet-tcp-y += tcp.o

0 commit comments

Comments
 (0)