Re: [PATCH 1/2] PCI: Make pci_msi_setup_pci_dev() non-static for use by arch code
From: Michael Ellerman <mpe@ellerman.id.au>
Date: 2015-08-19 00:44:46
Hi Guilherme, Thanks for the patches. On Tue, 2015-08-18 at 18:13 -0300, Guilherme G. Piccoli wrote:
Commit 1851617cd2 ("PCI/MSI: Disable MSI at enumeration even if kernel
doesn't support MSI") changed the location of the code that disables
MSI/MSI-X interrupts at PCI probe time in devices that have this flag set.
It moved the code from pci_msi_init_pci_dev() to a new function named
pci_msi_setup_pci_dev(), called by pci_setup_device().OK.
Since then, the pSeries platform of the powerpc architecture needs to disable MSI at PCI probe time manually, as the code flow doesn't reach pci_setup_device(). For doing so, it wants to call pci_msi_setup_pci_dev(). This patch makes the required function non-static, so that it will be called on PCI probe path on powerpc pSeries platform in next patch.
I didn't follow that entirely, I think you mean something like:
The pseries PCI probing code does not call pci_setup_device(), so since
commit 1851617cd2 pci_msi_setup_pci_dev() is not called and MSIs are left
enabled, which is a bug.
To fix this the pseries PCI probe should manually call
pci_msi_setup_pci_dev(), so make it non-static.
Does that look OK?
Also you haven't CC'ed the original author of the commit, or the PCI
maintainer, or the relevant lists.
That would be:
Michael S. Tsirkin [off-list ref]
Bjorn Helgaas [off-list ref]
linux-pci@vger.kernel.org
linux-kernel@vger.kernel.org
And finally both patches should have a fixes line, such as:
Fixes: 1851617cd2da ("PCI/MSI: Disable MSI at enumeration even if kernel doesn't support MSI")
cheers