Introduction
This document describes how to troubleshoot a problem when the Cisco Unified Computing Solutions (UCS) Virtual Interface Card (VIC) drivers not recognized by SUSE Linux Enterprise 12 after installation or an upgrade.
Prerequisites
The installation or update process of the Cisco UCS Virtual Interface Card Drivers follows the procedure provided in the Cisco Virtual Interface Card Drivers for Linux Installation Guide.
Requirements
Cisco recommends that you have knowledge of these topics:
- SUSE Linux Enterprise Administration
Components Used
This document is restricted to Cisco UCS VIC drivers and SUSE Linux Enterprise (SLES) 12 SP1.
The information in this document was created from the devices in a specific lab environment. All of the devices used in this document started with a cleared (default) configuration. If your network is live, ensure that you understand the potential impact of any command.
Background Information
Cisco UCS Virtual Interface Card (VIC) drivers facilitate communication between supported operating systems and Cisco UCS Virtual Interface Cards. Cisco UCS VIC driver ISO bundles include an eNIC and fNIC driver.
The eNIC driver is used for the Cisco UCS VIC Ethernet NIC. The fNIC driver is used for the Cisco UCS VIC Fibre Channel over Ethernet Host Bus Adapter (HBA).
Problem
In certain situations, the Redhat Package Manager (RPM) eNIC and fNIC driver installation finishes successfully, but the driver is not loaded by the SLES 12 SP1 Linux kernel. The driver version could be different in your environment and do have a dependency to the installed UCS release.
Note: Refer to the defect CSCvd50252 for additional information.
Check the Driver Version
Confirm the driver version installed by RPM.
(root) # rpm -qa -last |grep cisco
cisco-fnic-kmp-default-1.6.0.34_k3.12.49_11-1.x86_64 Tue 03 Oct 2017 10:32:32 AM EDT
cisco-enic-usnic-kmp-default-3.0.40.534.534.0_k3.12.49_11-1.x86_64 Fri 04 Aug 2017 06:06:39 PM EDT
Next confirm the Linux Kernel driver module version.
(root) # modinfo enic | grep ^version
version: 2.1.1.83
(root) # modinfo fnic | grep ^version
version: 1.6.0.17
From this example, you recognize a driver version mismatch between the version installed by RPM and loaded by the kernel.
Solution
UCS Release 3.1(3a) or Newer
Starting with Cisco UCS release 3.1(3a) new drivers are built and released as combo drivers. The drivers are available in the UCS Drivers ISO bundle folder /Drivers/Linux/Network/Cisco/VIC/SLES/SLES12.X/usNIC.
For the combo drivers installation process refer to the Cisco Virtual Interface Card Drivers for Linux Installation Guide. After the installation of the combo drivers finished the Linux Kernel module are current as well.
UCS Release Below 3.1(3a)
Sometimes it can be impossible to apply the new UCS release immediately because of other dependencies. To be able to install the VIC drivers successfully apply the following workaround.
Use the instructions in this document Cisco UCS Virtual Interface Card Drivers for Linux Installation Guide to compile the driver from the source tarball.
Manually copy the eNIC and fNIC module file to the new Linux kernel module folder.
(root) # cp /lib/modules/3.12.49-11-default/updates/enic.ko /lib/modules/3.12.67-60.64.21-default/updates/
(root) # cp /lib/modules/3.12.49-11-default/extra/cisco-fnic-sles12/fnic.ko /lib/modules/3.12.67.21-default/weak-updates/extra/cisco-fnic-sles12/fnic.ko
Afterwards it is required to regenerate the modules map file and to generate an initramfs.
(root) # depmod
(root) # mkinitrd
Follow the instructions provided in the output of mkinitrd command.
Verify
Ensure the driver installation is successful. In this example the rpm and kernel module driver version matches, so 2.3.0.40 for the eNIC driver and 1.6.0.25 for the fNIC driver.
(root) # for i in enic fnic ; do echo; echo "$i rpm version" ; echo ; rpm -qa| grep $i ; echo ; echo " $i driver version";echo; modinfo $i |grep ^version ;echo ;done
enic rpm version
cisco-enic-usnic-kmp-default-3.0.40.534.534.0_k3.12.49_11-1.x86_64 Fri 04 Aug 2017 06:06:39 PM EDT
enic driver version
version: 2.3.0.40
fnic rpm version
cisco-fnic-kmp-default-1.6.0.34_k3.12.49_11-1.x86_64 Tue 03 Oct 2017 10:32:32 AM EDT
fnic driver version
version: 1.6.0.34
Related Information
Cisco UCS Hardware and Software Compatibility Tool