Re: [PATCH v3] PCI: Check for PCIe downtraining conditions

From: Alex G.
Date: Mon Jul 23 2018 - 13:01:55 EST


On 07/23/2018 12:21 AM, Tal Gilboa wrote:
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:
[+cc maintainers of drivers that already use pcie_print_link_status()
and GPU folks]
[snip]

+ÂÂÂ /* 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.

I'm not understanding very well what you're asking. I understand you want to avoid printing this message on virtual functions, and that's already taken care of. I'm also not changing current behavior. Let's get v2 out and start the discussion again based on that.

Alex