В моей системе 2 устройства Infiniband, на одном из которых оба порта открыты.
$> ibstatus
Infiniband device 'mlx4_0' port 1 status:
default gid: fe80:0000:0000:0000:0002:c903:000f:0a9f
base lid: 0x22
sm lid: 0x1
state: 4: ACTIVE
phys state: 5: LinkUp
rate: 20 Gb/sec (4X DDR)
link_layer: IB
Infiniband device 'mlx4_0' port 2 status:
default gid: fe80:0000:0000:0000:0002:c903:000f:0aa0
base lid: 0x23
sm lid: 0x1
state: 4: ACTIVE
phys state: 5: LinkUp
rate: 20 Gb/sec (4X DDR)
link_layer: IB
Infiniband device 'mlx4_1' port 1 status:
default gid: fe80:0000:0000:0000:0002:c903:000f:0a6b
base lid: 0x0
sm lid: 0x0
state: 1: DOWN
phys state: 2: Polling
rate: 10 Gb/sec (4X)
link_layer: IB
Infiniband device 'mlx4_1' port 2 status:
default gid: fe80:0000:0000:0000:0002:c903:000f:0a6c
base lid: 0xd
sm lid: 0x2
state: 4: ACTIVE
phys state: 5: LinkUp
rate: 10 Gb/sec (4X)
link_layer: IB
Теперь, когда я проверяю состояние порта ib по крышке,
$> ibportstate -L 10x22 enable
ibwarn: [14836] mad_rpc_open_port: can't open UMAD port ((null):0)
ibportstate: iberror: failed: Failed to open '(null)' port '0'
Я не уверен в причине этого сообщения об ошибке. Я что-то упускаю?
Соответствующий umad
файл устройства существует (обычно это /dev/infiniband/umad0
)?
Кроме того, в системе, к которой у меня есть доступ, разрешения /dev/infiniband/umad0
установлены по умолчанию, так что обычные пользователи не могут получить к ним доступ:
crw-rw---- 1 root root 231, 0 Feb 1 16:00 /dev/infiniband/umad0
чтобы вы могли использовать sudo
для запуска вашей команды (или ослабьте разрешения /dev/infiniband/umad0
).
Возможно, это просто опечатка здесь, в SO, но вы указываете LID как 10x22
. Поскольку LID должен быть шестнадцатеричным числом, 1 не имеет значения. Это должно быть просто 0x22
.