2016-10-20 43 views
0

我试图使用内存窗口和我得到EPERM(错误= 1)调用ibv_alloc_mw(两种类型兆瓦)的时候。错误内存Windows(ibv_alloc_mw)

我有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的OFED我得到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 

Mellanox是否支持ibv_alloc_mw?

编辑:

我访问的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) 
+0

您是否也在使用Mellanox OFED内核驱动程序?和最近的固件版本? –

+0

是的。我启用了SR-IOV,看起来内存窗口不能很好地与虚拟适配器配合使用。谢谢您的帮助。 – JC1

回答

0

经进一步勘查,似乎这是由于在节点已经启用了SR-IOV我正在使用。禁用SR-IOV使这项工作。