Bjorn Helgaas <helgaas@xxxxxxxxxx> writes: > On Fri, Sep 22, 2017 at 09:19:28AM -0500, Bryant G. Ly wrote: >> This patch adds the machine dependent call for >> pcibios_bus_add_device, since the previous patch >> separated the calls out between the PowerNV and PowerVM. >> >> The difference here is that for the PowerVM environment >> we do not want match_driver set because in this environment >> we do not want the VF device drivers to load immediately, due to >> firmware loading the device node when VF device is assigned to the >> logical partition. >> >> This patch will depend on the patch linked below, which is under >> review. >> >> https://patchwork.kernel.org/patch/9882915/ >> >> Signed-off-by: Bryant G. Ly <bryantly@xxxxxxxxxxxxxxxxxx> >> Signed-off-by: Juan J. Alvarez <jjalvare@xxxxxxxxxx> >> --- >> arch/powerpc/platforms/pseries/eeh_pseries.c | 24 ++++++++++++++++++++++++ >> 1 file changed, 24 insertions(+) >> >> diff --git a/arch/powerpc/platforms/pseries/eeh_pseries.c b/arch/powerpc/platforms/pseries/eeh_pseries.c >> index 6b812ad990e4..45946ee90985 100644 >> --- a/arch/powerpc/platforms/pseries/eeh_pseries.c >> +++ b/arch/powerpc/platforms/pseries/eeh_pseries.c >> @@ -64,6 +64,27 @@ static unsigned char slot_errbuf[RTAS_ERROR_LOG_MAX]; >> static DEFINE_SPINLOCK(slot_errbuf_lock); >> static int eeh_error_buf_size; >> >> +void pseries_pcibios_bus_add_device(struct pci_dev *pdev) >> +{ >> + struct pci_dn *pdn = pci_get_pdn(pdev); >> + >> + if (!pdev->is_virtfn) >> + return; >> + >> + pdn->device_id = pdev->device; >> + pdn->vendor_id = pdev->vendor; >> + pdn->class_code = pdev->class; >> + >> + /* >> + * The following operations will fail if VF's sysfs files >> + * aren't created or its resources aren't finalized. >> + */ >> + eeh_add_device_early(pdn); >> + eeh_add_device_late(pdev); >> + eeh_sysfs_add_device(pdev); >> + pdev->match_driver = -1; > > match_driver is a bool, which should be assigned "true" or "false". Above he mentioned a dependency on: [04/10] PCI: extend pci device match_driver state https://patchwork.kernel.org/patch/9882915/ Which makes it an int. Or has that patch been rejected or something? cheers