On 7/19/2018 6:49 PM, Alex G. wrote:
On 07/18/2018 08:38 AM, Tal Gilboa wrote:
On 7/16/2018 5:17 PM, Bjorn Helgaas wrote:[snip]
[+cc maintainers of drivers that already use pcie_print_link_status()
and GPU folks]
+ÂÂÂ /* Multi-function PCIe share the same link/status. */
+ÂÂÂ if ((PCI_FUNC(dev->devfn) != 0) || dev->is_virtfn)
+ÂÂÂÂÂÂÂ return;
+
+ÂÂÂ pcie_print_link_status(dev);
+}
Is this function called by default for every PCIe device? What about VFs? We make an exception for them on our driver since a VF doesn't have access to the needed information in order to provide a meaningful message.
I'm assuming VF means virtual function. pcie_print_link_status() doesn't care if it's passed a virtual function. It will try to do its job. That's why I bail out three lines above, with 'dev->is_virtfn' check.
Alex
That's the point - we don't want to call pcie_print_link_status() for virtual functions. We make the distinction in our driver. If you want to change the code to call this function by default it shouldn't affect the current usage.