何故かLinuxで認識できないEC33があったのでメモ
設定手順
ドライバのステータス確認
ibstatなどでもIBカードが表示されない場合、ドライバの読み込みを確認します。
root@debian:~# dmesg|grep mlx [ 2.485595] mlx5_core 0000:18:00.0: enabling device (0140 -> 0142) [ 2.486205] mlx5_core 0000:18:00.0: mlx5_pci_vsc_init:66:(pid 449): Failed to get valid vendor specific ID [ 2.486236] mlx5_core 0000:18:00.0: firmware version: 10.10.4020 [ 2.486361] mlx5_core 0000:18:00.0: 126.016 Gb/s available PCIe bandwidth (8.0 GT/s PCIe x16 link) [ 4.396404] mlx5_core 0000:18:00.0: mlx5_init_clock:978:(pid 449): invalid device_frequency_khz, aborting HW clock init [ 4.610017] mlx5_core 0000:18:00.0: mlx5_cmd_out_err:804:(pid 683): QUERY_HCA_VPORT_CONTEXT(0x762) op_mod(0x0) failed, status bad operation(0x2), syndrome (0x3590f5), err(-22) [ 4.610263] infiniband mlx5_0: Couldn't create per-port data [ 4.683020] mlx5_ib.rdma: probe of mlx5_core.rdma.0 failed with error -12
こうなると mstflint などでも認識できないのでこちらではWindowsでファームウェアのアップデートを行う必要がありました。MLX_OFEDが入る環境ならそれでどうにかできるかもしれませんが、DebianではどうしようもなかったのでWindowsを使いました。
Windows10でファームウェアをアップデートする
Windows 11だと認識できるか怪しいのでこちらは10を使いました。
追記:WinSV 2025でも下記手順は使えたのでWin11でも大丈夫だと思います
まずはMFT(NVIDIA(Mellanox) Firmware Tools)をインストールします。下記手順は4.33.0-169で行いました。
https://network.nvidia.com/products/adapter-software/firmware-tools/
Connect-IB自体はWindowsに対応していませんが、ドライバがあたっていなくてもファームウェアの情報は認識できるようです。
C:\Program Files\Mellanox\WinMFT にMFTのバイナリが入るので、 mlxfwmanagerを実行して認識できているか確認します。
C:\>cd "C:\Program Files\Mellanox\WinMFT"
C:\Program Files\Mellanox\WinMFT>mlxfwmanager.exe
Querying Mellanox devices firmware ...
Device #1:
----------
Device Type: ConnectIB
Part Number: 00RX851_Ax
Description: Mellanox Connect-IB Dual-port QSFP FDR IB PCI-E 3.0 x16 HCA - For SystemP
PSID: IBM1210111019
PCI Device Name: mt4113_pciconf0
Port1 GUID: e41d2d0300dd9200
Port2 GUID: e41d2d0300dd9208
Versions: Current Available
FW 10.10.4020 N/A
Status: No matching image found
PCI Device Nameの mt4113_pciconf0 が対象のデバイスIDなので、flintでファームウェアをアップデートします。
ネットの海を彷徨って見つけたEC33に対応するファームはこれでした。
fw-ConnectIB-rel-10_16_1020-00RX851_Ax.bin
これをダウンロードしたら、flintでファームウェアをアップデートします。
C:\Program Files\Mellanox\WinMFT>flint -d mt4113_pciconf0 -i "C:\Users\a\Downloads\fw-ConnectIB-rel-10_16_1020-00RX851_Ax.bin" b
Done.ng flash section: 100%[2K
Current FW version on flash: 10.10.4020
New FW version: 10.16.1020
Burning FW image without signatures - OK
Restoring signature - OK
-I- To load new FW, issue system-level reset or use mlxfwreset where applicable.
#アップデート後、FWが新しくなっているか確認
C:\Program Files\Mellanox\WinMFT>mlxfwmanager.exe
Querying Mellanox devices firmware ...
Device #1:
----------
Device Type: ConnectIB
Part Number: 00RX851_Ax
Description: Mellanox Connect-IB Dual-port QSFP FDR IB PCI-E 3.0 x16 HCA - For SystemP
PSID: IBM1210111019
PCI Device Name: mt4113_pciconf0
Port1 GUID: e41d2d0300dd9200
Port2 GUID: e41d2d0300dd9208
Versions: Current Available
FW 10.16.1020 N/A
FW (Running) 10.10.4020 N/A
Status: No matching image found
再度Linuxで認識できるか確認
こちらの環境ではファームウェアのバージョンが上がれば問題なく認識できるようになりました。
# dmesg|grep mlx
[ 5.184815] mlx5_core 0000:18:00.0: enabling device (0140 -> 0142)
[ 5.185401] mlx5_core 0000:18:00.0: firmware version: 10.16.1020
[ 5.185474] mlx5_core 0000:18:00.0: 126.016 Gb/s available PCIe bandwidth (8.0 GT/s PCIe x16 link)
[ 9.992995] mlx5_core 0000:18:00.0: Flow counters bulk query buffer size increased, bulk_query_len(1)
[ 11.086840] mlx5_core 0000:18:00.0 ibs6d1: renamed from ib1
[ 11.093775] mlx5_core 0000:18:00.0 ibs6: renamed from ib0
# ibstat
CA 'mlx5_0'
CA type: MT4113
Number of ports: 2
Firmware version: 10.16.1020
Hardware version: 0
Node GUID: 0xe41d2d0300dd9200
System image GUID: 0xe41d2d0300dd9200
Port 1:
State: Active
Physical state: LinkUp
Rate: 40
Base lid: 9
LMC: 0
SM lid: 6
Capability mask: 0x26516848
Port GUID: 0xe41d2d0300dd9200
Link layer: InfiniBand
Port 2:
State: Active
Physical state: LinkUp
Rate: 40
Base lid: 11
LMC: 0
SM lid: 6
Capability mask: 0x26516848
Port GUID: 0xe41d2d0300dd9208
Link layer: InfiniBand
以上
Related articles
Add Comment