PCI slot and function number for ARI enabled devices

From: Mu Lichao <mulichao_at_outlook.com>
Date: Tue, 14 Mar 2017 06:37:09 +0000
Hi,

I am trying to enable Intel 82599 10GbE SR-IOV VFs on FreeBSD 12-CURRENT, and after enabled, the SR-IOV VFs can be seen by pciconf(1), but can not be seen by lspci(1), which is installed from ports/sysutils/pciutils:
# pciconf -l | tail -2
ixv0_at_pci0:1:0:128:      class=0x020000 card=0x002a1fc1 chip=0x10ed8086 rev=0x01 hdr=0x00
ixv1_at_pci0:1:0:130:      class=0x020000 card=0x002a1fc1 chip=0x10ed8086 rev=0x01 hdr=0x00

# lspci | grep 82599
01:00.0 Ethernet controller: Intel Corporation 82599ES 10-Gigabit SFI/SFP+ Network Connection (rev 01)
01:00.1 Ethernet controller: Intel Corporation 82599ES 10-Gigabit SFI/SFP+ Network Connection (rev 01)

After some debugging, I found that it is because of ARI. After ARI is enabled, the slot number is always 0 and the function number can be range between 0 and 255 when reading from /dev/pci, and this breaks lspci(1).

Is it a behavior by design or not?

Regards,
Lichao Mu
Received on Tue Mar 14 2017 - 05:37:13 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:41:10 UTC