← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 1499204] [NEW] wrong check for physical function in pci utils

 

Public bug reported:

in pci utils the is_physical_function function check it based on existing virtfn* symbolic link. The check is incorrect because
if the PF doen't enable SR-IOV meaning sriov_numvfs is set to zero there are no  virtfn* ljnks and the nova-compute recognize it as VF.

see: 
root@r-ufm160:/opt/stack/logs# ls /sys/bus/pci/devices/0000\:03\:00.0/
broken_parity_status      d3cold_allowed   enable            iommu_group    modalias   pools      reset         sriov_numvfs      uevent
class                     device           infiniband        irq            msi_bus    power      resource      sriov_totalvfs    vendor
commands_cache            dma_mask_bits    infiniband_cm     local_cpulist  msi_irqs   real_miss  resource0     subsystem         vpd
config                    driver           infiniband_mad    local_cpus     net        remove     resource0_wc  subsystem_device
consistent_dma_mask_bits  driver_override  infiniband_verbs  mlx5_num_vfs   numa_node  rescan     sriov         subsystem_vendor
root@r-ufm160:/opt/stack/logs# cat /sys/bus/pci/devices/0000\:03\:00.0/sriov_numvfs 
0


root@r-ufm160:/opt/stack/logs# echo 4 > /sys/bus/pci/devices/0000\:03\:00.0/sriov_numvfs
root@r-ufm160:/opt/stack/logs# ls /sys/bus/pci/devices/0000\:03\:00.0/
broken_parity_status      d3cold_allowed   enable            iommu_group    modalias   pools      reset         sriov_numvfs      uevent   virtfn3
class                     device           infiniband        irq            msi_bus    power      resource      sriov_totalvfs    vendor   vpd
commands_cache            dma_mask_bits    infiniband_cm     local_cpulist  msi_irqs   real_miss  resource0     subsystem         virtfn0
config                    driver           infiniband_mad    local_cpus     net        remove     resource0_wc  subsystem_device  virtfn1
consistent_dma_mask_bits  driver_override  infiniband_verbs  mlx5_num_vfs   numa_node  rescan     sriov         subsystem_vendor  virtfn2

** Affects: nova
     Importance: Undecided
     Assignee: Moshe Levi (moshele)
         Status: In Progress


** Tags: passthrough pci

** Tags added: pci-passthogth

** Tags removed: pci-passthogth
** Tags added: passthrough pci

-- 
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to OpenStack Compute (nova).
https://bugs.launchpad.net/bugs/1499204

Title:
  wrong check for physical function in pci utils

Status in OpenStack Compute (nova):
  In Progress

Bug description:
  in pci utils the is_physical_function function check it based on existing virtfn* symbolic link. The check is incorrect because
  if the PF doen't enable SR-IOV meaning sriov_numvfs is set to zero there are no  virtfn* ljnks and the nova-compute recognize it as VF.

  see: 
  root@r-ufm160:/opt/stack/logs# ls /sys/bus/pci/devices/0000\:03\:00.0/
  broken_parity_status      d3cold_allowed   enable            iommu_group    modalias   pools      reset         sriov_numvfs      uevent
  class                     device           infiniband        irq            msi_bus    power      resource      sriov_totalvfs    vendor
  commands_cache            dma_mask_bits    infiniband_cm     local_cpulist  msi_irqs   real_miss  resource0     subsystem         vpd
  config                    driver           infiniband_mad    local_cpus     net        remove     resource0_wc  subsystem_device
  consistent_dma_mask_bits  driver_override  infiniband_verbs  mlx5_num_vfs   numa_node  rescan     sriov         subsystem_vendor
  root@r-ufm160:/opt/stack/logs# cat /sys/bus/pci/devices/0000\:03\:00.0/sriov_numvfs 
  0

  
  root@r-ufm160:/opt/stack/logs# echo 4 > /sys/bus/pci/devices/0000\:03\:00.0/sriov_numvfs
  root@r-ufm160:/opt/stack/logs# ls /sys/bus/pci/devices/0000\:03\:00.0/
  broken_parity_status      d3cold_allowed   enable            iommu_group    modalias   pools      reset         sriov_numvfs      uevent   virtfn3
  class                     device           infiniband        irq            msi_bus    power      resource      sriov_totalvfs    vendor   vpd
  commands_cache            dma_mask_bits    infiniband_cm     local_cpulist  msi_irqs   real_miss  resource0     subsystem         virtfn0
  config                    driver           infiniband_mad    local_cpus     net        remove     resource0_wc  subsystem_device  virtfn1
  consistent_dma_mask_bits  driver_override  infiniband_verbs  mlx5_num_vfs   numa_node  rescan     sriov         subsystem_vendor  virtfn2

To manage notifications about this bug go to:
https://bugs.launchpad.net/nova/+bug/1499204/+subscriptions


Follow ups