#infiniband #rdma #mellanox #ofed
#infiniband #rdma #mellanox #ofed
Вопрос:
Я пытаюсь использовать окна памяти, и я получаю EPERM (errno = 1) при вызове ibv_alloc_mw (с обоими типами MWS).
У меня есть карты mellanox ConnectX-3 и следующие ОФЕД:
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
При запуске rping в офисе Mellanox я получаю ту же ошибку:
librdmacm-1.1.0mlnx/examples> ./rping -s amp;
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)
Комментарии:
1. Используете ли вы также драйвер ядра Mellanox OFED? И последняя версия прошивки?
2. ДА. У меня был включен SR-IOV, и, похоже, окна памяти плохо работают с виртуальными адаптерами. Спасибо за помощь.
Ответ №1:
При дальнейшем изучении кажется, что это связано с тем, что SR-IOV включен в узлах, которые я использую. Отключение SR-IOV позволяет выполнить эту работу.