How To Configure Mellanox network device into and from VMDirectPath I/O passthrough mode on VMware ESXi 6.x

Version 8

    This post describes the procedure of how to configure Mellanox network device into and from VMDirectPath I/O passthrough mode on VMware ESXi 6.x.

    About VMDirectPath I/O passthrough devices

    The supported maximums for passthrough devices per VMs are:

    • ESX\ESXi 5.5: 16 Devices
    • ESX\ESXi 6.x: 16 Devices

     

    Configuring passthrough Mellanox network device

    Before configuring a device for PCI Passthrough, ensure that platform and device meets the PCI Passthrough requirements, see VMware vSphere VMDirectPath I/O: Requirements for Platforms and Devices (2142307).

    To configure passthrough devices on an ESX/ESXi host:

     

    1. Select an ESX\ESXi host from the Inventory of VMware vSphere Client.

    2. Enter Maintenance Mode the ESXi host.

    3. In the Navigator click Manage, Hardware and PCI Devices. The passthrough Configuration page lists all available pass-through devices.

    4. Select the devices and click Toggle passthrough.

    5. Reboot host for the change to take effect. After rebooting, the devices are marked with a green icon and are enabled.

    Note: The configuration changes are saved in the /etc/vmware/esx.conf file.

    The PCI slot number where the device was connected is 02:00.1. It is recorded as:

     

    /device/00000:002:00.1/owner = = "passthru"

     

    5. To verify it:

    a. Select an ESX\ESXi host from the Inventory of VMware vSphere Client.

    b. Enter Maintenance Mode the ESXi host.

    c. In the Navigator click Manage, Hardware and PCI Devices. The passthrough Configuration page lists all available pass-through devices.

    d. Verify:

    In CLI:

    a. Enable SSH Access to ESXi server.

    b. Log into ESXi vSphere Command-Line Interface with root permissions.

    c.Edit the /etc/vmware/esx.conf file by changing the owner of the PCI device from passthru to vmkernel.# vi /etc/vmware/esx.conf

    Find /device/<PCI_ID>/owner = "passthru".
    /passthru

    d. Check:

    /device/00000:002:00.1/owner = = "passthru"

    6. Reboot the ESXi host.

    7. Exit Maintenance Mode the ESXi host.

     

    To configure a PCI device on a virtual machine:

    1. From the Navigator in vSphere Client, right-click the virtual machine and click Edit Settings.
    2. Select the Virtual Hardware tab.
    3. Click Add other device.

    Choose the PCI Device.

    Click Save.

     

    Note: When the device is assigned, the virtual machine must have a memory reservation for the full configured memory size.

     

    Done!

    Configuring non-passthrough Mellanox network device

    To force the change to non-passthrough mode, complete these steps:

     

    1. Enable SSH Access to ESXi server.

    2. Log into ESXi vSphere Command-Line Interface with root permissions.

    3. Enter Maintenance Mode the ESXi host.

    4. Edit the /etc/vmware/esx.conf file by changing the owner of the PCI device from passthru to vmkernel.

      # vi /etc/vmware/esx.conf
    5. Find /device/<PCI_ID>/owner = "passthru".
      /passthru
    6. Change from:
      /device/00000:002:00.1/owner = = "passthru"
      Change to:
      /device/00000:002:00.1/owner = = "vmkernel"

    7. Reboot the ESXi host.

    8. Verify.

    # lspci | grep Mellanox

    0000:02:00.0 Network controller: Mellanox Technologies MT28800 Family [ConnectX-5 Ex] [vmnic2]

    0000:02:00.1 Network controller: Mellanox Technologies MT28800 Family [ConnectX-5 Ex] [vmnic3]

    9. Exit Maintenance Mode the ESXi host.

     

    Done!