On 01/08/2013 05:05 PM, Don Dutile wrote:Again -- nack! -- SRIOV devices must be PCIe.
(a) no such thing as a non-PCIe VF -- all VFs
are PCIe-based.
The sriov spec says that a VF doesn't necessarily has to have PCIE cap:
"3.5 PCI Express Capability:
...
PFs and VFs are required to implement this capability ... subject to
the exceptions and additional requirements described below"
(b) code says to return null if VF doesn't have PCIe cap,
but the code checks if pdev is VF and if PF is PCIe,
which it must be! ...
You are right, I should rather check if the VF is not a pcie.
This is a violation of the SRIOV spec.nack until a better&/or matching explanation of what
the real problem is, and what the solution is trying to do.
The problem is that I do have a device where VFs are not PCIE and I get this nasty warning.
For now I have a workaround, but it would be nice it Linux would support non PCIE VFs.
Thanks,
T