问题说明

正常安装linux系统后,开启网卡虚拟化,重启生效时,卡在进系统的地方;关闭BIOS的VT-D时不会卡死,但是有系统里的网卡虚拟化报错。

涉及范围

使用网卡虚拟化功能的系统,系统涉及LINUX系统(内核版本2.6.18 到4.15以及RHEL 6.9、RHEL 7.4、SLES 11SP4、SLES 12SP3、Ubuntu 16.04)

YZCA-00234-101 网卡_82599ES_10G_LC_PCIEX8_双_XR

故障根因

未安装网卡虚拟化驱动ixgbevf。

系统不自带此驱动,需要另外安装更新。

解决方案

安装网卡虚拟化驱动ixgbevf。

参考内部的readme文件

1. Move the virtual function driver tar file to the directory of your choice. For

   example, use ‘/home/username/ixgbevf’ or ‘/usr/local/src/ixgbevf’.

2. Untar/unzip the archive, where <x.x.x> is the version number for the

   driver tar file:

   tar zxf ixgbevf-<x.x.x>.tar.gz

3. Change to the driver src directory, where <x.x.x> is the version number

   for the driver tar:

   cd ixgbevf-<x.x.x>/src/

4. Compile the driver module:

   # make install

   The binary will be installed as:

   /lib/modules/<KERNEL VERSION>/kernel/drivers/net/ixgbevf/ixgbevf.[k]o

   The install location listed above is the default location. This may differ

   for various Linux distributions.

5. Load the module using the modprobe command:

   modprobe <ixgbevf> [parameter=port1_value,port2_value]

   Make sure that any older ixgbevf drivers are removed from the kernel before

   loading the new module:

   rmmod ixgbevf; modprobe ixgbevf

6. Assign an IP address to the interface by entering the following,

   where ethX is the interface name that was shown in dmesg after modprobe:

   ip address add <IP_address>/<netmask bits> dev ethX

7. Verify that the interface works. Enter the following, where IP_address

   is the IP address for another machine on the same subnet as the interface

   that is being tested:

   ping <IP_address>

建议与总结

现场遇到此问题,优先安装升级ixgbevf驱动,然后重启验证,此驱动可以到intel官方网站进行下载。下载地址:https://downloadcenter.intel.com/zh-cn/download/18700/Ethernet–10-