Contents

Introduction

Prerequisites

Requirements

Components Used

Background Information

Problem

Check the Driver Version

Solution

UCS Release 3.1(3a) or Newer

UCS Release Below 3.1(3a)

Verify

Related Information

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