------- Comment From [email protected] 2020-05-05 03:24 EDT-------
In particular the relevant commits are:

e6ab7490ffaed83d6581f512e66c7c8cc6f58c2d s390/pci: Expose new port attribute 
for PCIe functions
d08d6f5d75242ceb410efbdf650efecc40d68c2d s390/pci: adaptation of iommu to 
multifunction
6cf17f9a67c124aa4739b79709008d942635b975 s390/pci: define kernel parameters for 
PCI multifunction
c9a1752b84f1a8f73187c116ff0514b2ab24d878 s390/pci: define RID and RID available
05bc1be6db4b2683bbf5b9394a75d0fb3acfcede s390/pci: create zPCI bus
f606b3ef47c9f874af605323099663a10f691b24 s390/pci: adapt events for zbus
65e450a9f9adabf3de1305a4c616f1313df402a3 s390/pci: Adding bus resource
44510d6fa0c00aa90b80075caa6b313b25927475 s390/pci: Handling multifunctions
53dd462ac4dc3fc61ee90ad03d96202e17589156 s390/pci: Do not disable PF when VFs 
exist
de267a7c71ba6be7857da0185871759067513d9c s390/pci: Documentation for zPCI

-- 
You received this bug notification because you are a member of Kernel
Packages, which is subscribed to linux in Ubuntu.
https://bugs.launchpad.net/bugs/1874056

Title:
  [UBUNTU 20.04] s390x/pci: enumerate pci functions per physical adapter

Status in Ubuntu on IBM z Systems:
  Incomplete
Status in linux package in Ubuntu:
  New

Bug description:
  Today, the enumeration of PCI functions on s390x does not reflect
  which functions belongs to which physical adapter.

  Layout of a PCI function address on Linux:
  0000:00:00.0
  <root complex>:<bus>:<device>.<function>

  On s390x, each function is presented as individual root complex today,
  e.g.:

  PCHID 0100 VF1 0000:00:00.0
  PCHID 0100 VF23 0001:00:00.0
  PCHID 0200 VF1 0002:00:00.0
  OCHID 0100 VF17 0003:00:00.0

  On other platforms, the addresses correctly reflect the actual HW
  configuration. Some device drivers (mlx5 for Mellanox adapters) group
  functions of one physical adapter by checking which PCI functions have
  identical values for <root complex>:<bus>:<device>. We need to use the
  same enumeration scheme to achieve this functionality on s390x.

  In this case, the two physical functions of a Mellanox adapter need to
  get function number 0 and 1, and all virtual functions need to use the
  same <root complex>:<bus> numbers with function/device numbers
  counting up.

  Required result (example with 4 VFs per PF):

  PCHID 0100 PF 0 0000:00:00.0
  PCHID 0100 PF 1 0000:00:00.1
  PCHID 0100 PF 0 VF 0 0000:00:00.2
  PCHID 0100 PF 0 VF 1 0000:00:00.3
  PCHID 0100 PF 0 VF 2 0000:00:00.4
  PCHID 0100 PF 0 VF 3 0000:00:00.5
  PCHID 0100 PF 1 VF 0 0000:00:00.6
  PCHID 0100 PF 1 VF 1 0000:00:00.7
  PCHID 0100 PF 1 VF 2 0000:00:00.8
  PCHID 0100 PF 1 VF 3 0000:00:00.9

  PCHID 0200 PF 0 0001:00:00.0

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu-z-systems/+bug/1874056/+subscriptions

-- 
Mailing list: https://launchpad.net/~kernel-packages
Post to     : [email protected]
Unsubscribe : https://launchpad.net/~kernel-packages
More help   : https://help.launchpad.net/ListHelp

Reply via email to