我正在尝试使用内存窗口,并且在调用ibv_alloc_mw(使用这两种类型的MWs)时,我得到了EPERM (errno=1)。
我有mellanox ConnectX-3卡和以下OFED:
ofed_info | head -n 1
MLNX_OFED_LINUX-3.2-2.0.0.0 (OFED-3.2-2.0.0):看来我的名片应该支持这个功能:
ibv_devinfo -v | grep EXP_MW
EXP_MW_TYPE_2B
EXP_MW_TYPE_2B在Mellanox中运行rping时,我得到相同的错误:
librdmacm-1.1.0mlnx/examples> ./rping -s &
librdmacm-1.1.0mlnx/examples> ./rping -c -a 10.10.49.87 -w 1
rdma_buf alloc_mw failed
rping_setup_buffers failed: -12
librdmacm-1.1.0mlnx/examples> ./rping -c -a 10.10.49.87 -w 2
rdma_buf alloc_mw failed
rping_setup_buffers failed: -12是ibv_alloc_mw,Mellanox?甚至支持它。
编辑:
我访问了ConnectX-4卡,也得到了同样的错误。我还可以看到,每当我尝试使用内存窗口选项运行rping时,都会记录错误:
dmesg | tail -n 2
[9349257.246854] mlx4_core 0000:02:00.0: vhcr command 0xd slave:0in_param 0xe26b4000 in_mod=0x110 op_mod=0x0 failed with error:0, status -1
[9349257.246856] mlx4_core 0000:02:00.0: SW2HW_MPT failed (-1)发布于 2016-10-25 18:08:26
经过进一步的探索,这似乎是由于在我使用的节点中启用了SR。禁用SR使此工作。
https://stackoverflow.com/questions/40165799
复制相似问题