esxcli hardware pci list command returns VMKernel Name as empty
search cancel

esxcli hardware pci list command returns VMKernel Name as empty

book

Article ID: 377660

calendar_today

Updated On:

Products

VMware vSphere ESXi

Issue/Introduction

Below command returns VMKernel Name as empty:

# esxcli hardware pci list

0000:88:00.0
   Address: 0000:88:00.0
   Segment: 0x0000
   Bus: 0x88
   Slot: 0x00
   Function: 0x0
   VMkernel Name: ===================> Missing nic name e.g. it is supposed to be vmnicX
   Vendor Name: Mellanox Technologies
   Device Name: MT2892 Family [ConnectX-6 Dx]
   Configured Owner: VMkernel
   Current Owner: VMkernel
   Vendor ID: 0x15b3
   Device ID: 0x101d
   SubVendor ID: 0x15b3
   SubDevice ID: 0x0058
   Device Class: 0x0200
   Device Class Name: Ethernet controller
   Programming Interface: 0x00
   Revision ID: 0x00
   Interrupt Line: 0x05
   IRQ: 255
   Interrupt Vector: 0x00
   PCI Pin: 0x00
   Spawned Bus: 0x00
   Flags: 0x3001
   Module ID: 37
   Module Name: nmlx5_core
   Chassis: 0
   Physical Slot: 16
   Slot Description: PCIe Slot 16
   Device Layer Bus Address: s00000010.00
   Passthru Capable: true
   Parent Device: PCI 0:133:2:0
   Dependent Device: PCI 0:136:0:0
   Reset Method: Function reset
   FPT Sharable: true
   NUMA Node: 1
   Hardware Label:

Environment

VMware ESXi 7.x

VMware ESXi 8.x

Resolution

Earlier 'esxcli hardware pci list' being used to extract vmkernel name info which is not there anymore due to recent changes.

This information was removed on purpose, basically because there is not a 1-1 mapping between NIC PCI functions and NIC uplinks.

Some cards might have multiple uplinks per PCI function, and some uplinks are not PCI at all, etc.

 

You can use the below command to find the nic name and the PCI device ID:

 'esxcli network nic list'