nvme-tcp: add NVMe over TCP host driver
authorSagi Grimberg <sagi@lightbitslabs.com>
Tue, 4 Dec 2018 01:52:17 +0000 (17:52 -0800)
committerChristoph Hellwig <hch@lst.de>
Thu, 13 Dec 2018 08:58:58 +0000 (09:58 +0100)
commit3f2304f8c6d6ed97849057bd16fee99e434ca796
tree04cec3c326bfd5a8b322401b04a17eba2e5abdcf
parentad4f530e95a7b88a332035b9e0c5384441356576
nvme-tcp: add NVMe over TCP host driver

This patch implements the NVMe over TCP host driver. It can be used to
connect to remote NVMe over Fabrics subsystems 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.

To connect to all NVMe over Fabrics controllers reachable on a given taget
port over TCP use the following command:

nvme connect-all -t tcp -a $IPADDR

This requires the latest version of nvme-cli with TCP support.

Signed-off-by: Sagi Grimberg <sagi@lightbitslabs.com>
Signed-off-by: Roy Shterman <roys@lightbitslabs.com>
Signed-off-by: Solganik Alexander <sashas@lightbitslabs.com>
Signed-off-by: Christoph Hellwig <hch@lst.de>
drivers/nvme/host/Kconfig
drivers/nvme/host/Makefile
drivers/nvme/host/tcp.c [new file with mode: 0644]