Enabling and Disabling Native Drivers in ESXi
search cancel

Enabling and Disabling Native Drivers in ESXi

book

Article ID: 344761

calendar_today

Updated On:

Products

VMware vSphere ESXi

Issue/Introduction

ESXi 6.5 contains many new native drivers that replace the earlier vmklinux drivers. Most of the new native drivers are enabled by default after installation or upgrade.

Some of the new native drivers are disabled by default, because they do not fully support the functions of the corresponding vmklinux drivers. For example:

  • qflge is a native driver that replaces the vmklinux net-bnx2 driver 
  • qfle3 is a native driver that replaces the vmklinux net-bnx2x driver 
  • ixgben is a native driver that replaces the vmklinux net-ixgbe driver
If the device driver and the HBA requires validation for Hardware iSCSI or Software iSCSI, please visit VMware HCL website

Note :
SW FCoE is not supported in ESXi 6.5 for any of the inbox Ethernet drivers listed above, see End of Availability and End of Support for FCoE on Intel Network Controllers  for more information.
This applies to "VMware Inbox" drivers that are included in VMware vSphere 6.5 image and not to "Partner Async" versions that may be included on OEM custom images or are available as downloads from VMware.

Environment

VMware vSphere ESXi 

 

Resolution

For new ESXi 6.5 installations, you can enable a native driver in the ESXi installer by using the vSphere Image Builder. With the vSphere Image Builder, you can remove the vmklinux driver that corresponds to the native driver from the ISO image. For example, to enable the qfle3 native driver, you can use Image Builder to remove the net-bnx2x VIB from the ISO image. For more information, see Customizing Installations with vSphere ESXi Image Builder .

If after drive upgrade you find that the correct driver is not being used for the vmnic, the following procedures describe how to enable and disable the native drivers by using esxcli commands. 

Enable a Native Driver:

  1. Place the ESXi host in maintenance mode by using the vSphere Web Client or VMware Host Client.
     
  2. Run the esxcli command to enable one of the native drivers.
    esxcli system module set --enabled=true --module=native_driver_name

    For example, to enable the qfle3 native driver, run the following esxcli command:
    esxcli system module set --enabled=true --module=qfle3
     
  3. Run the esxcli command to check the module details
    esxcli system module list
     
  4. Restart the ESXi host.
    Stateless hosts exit maintenance mode automatically after reboot
     
  5. If you enabled a native driver on a stateful host, exit the maintenance mode manually

Disable a Native Driver:

  1. Place the ESXi host in maintenance mode by using the vSphere Web Client or VMware Host Client.
     
  2. Run the esxcli command to disable one of the native drivers.
    esxcli system module set --enabled=false --module=native_driver_name

    For example, to disable the qflge native driver, run the following esxcli command:
    esxcli system module set --enabled=false --module=qflge
     
  3. Run the esxcli command to check the module details
    esxcli system module list
     
  4. Restart the ESXi host.
    Stateless hosts exit maintenance mode automatically after reboot.
     
  5. If you disabled a native driver on a stateful host, exit the maintenance mode.

Get a Driver Version:

Run the esxcli command to view the version of a driver:
esxcli software vib get -n native_driver_name

For example, to view the versions of the qfle3 native driver and its corresponding vmklinux driver:

  • To view the version of the qfle3 native driver, run the following esxcli command:
    esxcli software vib get -n qfle3

    You get an output similar to:
    VMW_bootbank_qfle3_1.0.2.7-1vmw.650.0.0.4240471
    Name: qfle3
    Version: 1.0.2.7-1vmw.650.0.0.4240471
    Type: bootbank
    Vendor: VMW
    Acceptance Level: VMwareCertified
    Summary: Network driver for QLogic E3 Controller
    Description: Native QLogic E3 network driver for VMware ESXi
    ReferenceURLs:
    Creation Date: 2016-08-11
    Depends: vmkapi_2_4_0_0
    Conflicts:
    Replaces:
    Provides:
    Maintenance Mode Required: True
    Hardware Platforms Required:
    Live Install Allowed: False
    Live Remove Allowed: False
    Stateless Ready: True
    Overlay: False
    Tags: PCIID 107716a1, PCIID 107716a4, PCIID 14e4163d, PCIID 14e4163e, PCIID 14e41662, PCIID 14e41663, PCIID 14e4168a, PCIID 14e4168a10281f67, PCIID 14e4168a10281f68, PCIID 14e4168a14e40200, PCIID 14e4168a1bcf805f, PCIID 14e4168e, PCIID 14e416a1, PCIID 14e416a2, PCIID 14e416a2103c22fa, PCIID 14e416a4, PCIID 14e416a5, PCIID 14e416ae, module, driver
    Payloads: qfle3

  • To view the version of the vmklinux driver that qfle3 replaces, run the following esxcli command:
    esxcli software vib get -n net-bnx2x
You get an output similar to:

VMW_bootbank_net-bnx2x_1.78.80.v60.12-1vmw.650.0.0.4240471
Name: net-bnx2x
Version: 1.78.80.v60.12-1vmw.650.0.0.4240471
Type: bootbank
Vendor: VMW
Acceptance Level: VMwareCertified
Summary: bnx2x: net driver for VMware ESX
Description: QLogic NetXtreme II 10G/20G Ethernet Driver
ReferenceURLs:
Creation Date: 2016-08-11
Depends: vmkapi_2_3_0_0, com.vmware.driverAPI-9.2.3.0, com.broadcom.cnic_register-9.2.3.0
Conflicts:
Replaces:
Provides: com.broadcom.bnx2x-9.2.3.0
Maintenance Mode Required: True
Hardware Platforms Required:
Live Install Allowed: False
Live Remove Allowed: False
Stateless Ready: True
Overlay: False
Tags: driver, module
Payloads: net-bnx2

Note: qfle3 driver architecture requires to unload leaf driver, then it will allow to unload root driver node.

unload qfle3i/qfle3f
unload qcnic
unload qfle3


This sequence is requested to make sure all drivers can be unloaded. If you do not follow this sequence, we cannot make sure driver can be unloaded. This sequence request will not impact loadesx. Loadesx test can pass without any issue.