鲲鹏社区首页
中文
注册
开发者
我要评分
获取效率
正确性
完整性
易理解
在线提单
论坛求助

固件冷更新

  1. 升级全量固件。
    具体操作,请参见《SP600 标准网卡 用户指南》里“升级固件”内容。
    • 首次使用或使用新版本的FlexDA SDK编译NPU固件时,务必使用提供的全量固件进行冷更新。
    • 若冷更新失败或者过程中意外中断,需要再次进行冷更新操作直至成功。
    • 不加-a cold时默认执行冷更新。
  2. 查看当前版本信息。
    版本信息中的驱动和固件信息可能有更新。
    # 查看当前版本信息
    hinicadm3 version -i hinic0

    出现如下打印的版本信息,与更新前的版本号区别,更新后的版本号以交付件的实际版本号为准。

    boot   : 17.12.2.0         2025-05-15_00:00:01
    mpu    : 17.12.2.0         2025-05-15_00:00:01
    smu_L0 : 17.12.2.0         2025-05-15_00:00:01
    smu_L1 : 17.12.2.0         2025-05-15_00:00:01
    npu    : 17.12.2.0         2025-05-15_00:00:01
    cfg    : 0.0.0.22          2025-05-15_10:02:01
    hinicadm    tool: 17.12.2.0   2025-04-30_00:00:01
    hisdk3     driver: 17.12.2.0  2025-04-30_00:00:01
    hinic3     driver: 17.12.2.0  2025-04-30_00:00:01
    hiroce3    driver: 17.12.2.0  2025-04-30_00:00:01
  3. 查看是否为RoCE_2X100G_UN_ADAP固件模板。
    <# hinicadm3 cfg_template -i hinic0 -q
    ***************** Current Info *******************
    [Current   ] Cfg template index :  3
    ***************** Next Reset Cfg *****************
    [Next Reset] Max support index  :  3
    [Next Reset] Cfg template index :  3
    [Next Reset] Firmware support cfg template name:
                 Template[ 0]: NIC_2X100G
                 Template[ 1]: NIC_2X100G_3PF
                 Template[ 2]: ROCE_2X100G
                 Template[ 3]: ROCE_2X100G_UN_ADAP

    如果不是该模板切换至RoCE_2X100G_UN_ADAP固件模板,reboot后生效。

    <# hinicadm3 cfg_template -i hinic0 -s 3
    ***************** Current Info *******************
    [Current   ] Cfg template index :  3
    ***************** Next Reset Cfg *****************
    [Next Reset] Max support index  :  3
    [Next Reset] Cfg template index :  3
    [Next Reset] Firmware support cfg template name:
                 Template[ 0]: NIC_2X100G
                 Template[ 1]: NIC_2X100G_3PF
                 Template[ 2]: ROCE_2X100G
                 Template[ 3]: ROCE_2X100G_UN_ADAP
  4. 加载RoCE设备并查看设备。
    <# modprobe hiroce3
    <# ibv_devices
        device                 node GUID
        ------              ----------------
        hrn3_bond_0         aedccafffe71b4ee

    若打印信息中没有hrn3_bond_0的信息,建议执行以下命令修改默认设备名,防止设备被系统udev模块重命名。

    rm -rf  /lib/udev/rules.d/60-rdma-persistent-naming.rules
    # 重启生效设置,可以待4.5.2操作完后一起重启
    reboot

    重启后,如果网口状态为DOWN,可以尝试使用命令启用自适应功能,检查网口状态。

    如果问题得到解决,说明可能是光模块型号不匹配,此时建议更换光模块型号。主要原因是光模块在芯片端和交换机端的默认FEC模式不同,导致链路建立失败。

    hinicadm3 self_adaption -i hinic0 -p 0 -s on
    hinicadm3 self_adaption -i hinic0 -p 1 -s on
  5. 关闭SELinux和防火墙。
    1. 执行以下命令,检查环境是否部署SELinux。
      getenforce
      • 若打印信息如下,表示环境中未安装SELinux,无需执行后续操作。
        If 'getenforce' is not a typo you can use command-not-found to lookup the package that contains it, like this: cnf getenforce
      • 若打印如下信息,表示SELinux已被关闭。
        Disabled 
      • 若未关闭SELinux,则需执行以下操作。
    2. 执行以下步骤,关闭SELinux。
      • 执行以下命令,临时关闭SELinux。
        setenforce 0
      • 执行以下命令,永久关闭SELinux。
        1. 进入“/etc/selinux”目录,修改config文件。
          cd /etc/selinux
          vi config
        2. 输入“i”进入编辑模式,将“SELINUX”设置为“disabled”。
          SELINUX=disabled
        3. 完成后按下“ESC”,输入“wq!”,保存文件。
        4. 重启机器,关闭防火墙。
        5. 检查防火墙。

          每次环境重启后均需检查防火墙状态,确保防火墙已关闭。

          systemctl status firewalld  
          systemctl stop firewalld.service # 立即停止 firewalld 服务
          systemctl disable firewalld.service # 禁用 firewalld 服务