I have 2 ConnectX-5 NICs in my PC (Ubuntu 18.04, kernel 4.15.0-36). They are in 2 different subnets (192.168.1.100/24, 192.168.2.100/24). I have 4 NVMoF targets and I try to connect them from my PC:
sudo nvme connect -t rdma -a 192.168.2.52 -n nqn.2018-09.com.52 -s 4420
sudo nvme connect -t rdma -a 192.168.1.9 -n nqn.2018-09.com.9 -s 4420
sudo nvme connect -t rdma -a 192.168.2.54 -n nqn.2018-09.com.54 -s 4420
sudo nvme connect -t rdma -a 192.168.1.2 -n nqn.2018-09.com.2 -s 4420
Failed to write to /dev/nvme-fabrics: Invalid cross-device link
I disconnect all these targets and reboot the PC. Then I try to connect to these targets in a different order:
sudo nvme connect -t rdma -a 192.168.1.2 -n nqn.2018-09.com.2 -s 4420
sudo nvme connect -t rdma -a 192.168.1.9 -n nqn.2018-09.com.9 -s 4420
sudo nvme connect -t rdma -a 192.168.2.52 -n nqn.2018-09.com.52 -s 4420
Failed to write to /dev/nvme-fabrics: Invalid cross-device link
I google a bit. It seems that there are 2 report instances of this error message related to Mellanox NIC. But I don’t understand the nature of this error and I don’t see any work-around. Any suggestions? Here’s some info from my PC.
yao@Host1:~$ lspci | grep Mellan
15:00.0 Ethernet controller: Mellanox Technologies MT27800 Family [ConnectX-5]
21:00.0 Ethernet controller: Mellanox Technologies MT27800 Family [ConnectX-5]
yao@Host1:~$ lspci -vvv -s 15:00.0
15:00.0 Ethernet controller: Mellanox Technologies MT27800 Family [ConnectX-5]
Subsystem: Mellanox Technologies MT27800 Family [ConnectX-5]
Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR+ FastB2B- DisINTx+
Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- SERR- <PERR- INTx-
Latency: 0, Cache Line Size: 32 bytes
Interrupt: pin A routed to IRQ 33
NUMA node: 0
Region 0: Memory at 387ffe000000 (64-bit, prefetchable) [size=32M]
Expansion ROM at 90500000 [disabled] [size=1M]
Capabilities:
Kernel driver in use: mlx5_core
Kernel modules: mlx5_core
yao@Host1:~$ sudo lsmod | grep mlx
mlx5_ib 196608 0
ib_core 225280 9 ib_cm,rdma_cm,ib_umad,nvme_rdma,ib_uverbs,iw_cm,mlx5_ib,ib_ucm,rdma_ucm
mlx5_core 544768 1 mlx5_ib
mlxfw 20480 1 mlx5_core
devlink 45056 1 mlx5_core
ptp 20480 2 e1000e,mlx5_core
yao@Host1:~$ modinfo mlx5_core
filename: /lib/modules/4.15.0-36-generic/kernel/drivers/net/ethernet/mellanox/mlx5/core/mlx5_core.ko
version: 5.0-0
license: Dual BSD/GPL