Re: [PATCH 2/4] PCI: pciehp: bail out if pci_hp_add_bridge() fails

From: Nam Cao
Date: Sat May 04 2024 - 11:48:33 EST


On Sat, May 04, 2024 at 05:02:34PM +0200, Lukas Wunner wrote:
> On Sat, May 04, 2024 at 12:56:30PM +0200, Nam Cao wrote:
> > On Sat, May 04, 2024 at 11:51:54AM +0200, Lukas Wunner wrote:
> > > Could you reproduce with pciehp instead of shpchp please?
> >
> > Same thing for pciehp below. I think the problem is because without
> > pci_stop_and_remove_bus_device(), no one cleans up the device added in
> > pci_scan_slot(). When another device get hot-added, pci_get_slot() wrongly
> > thinks another device is already there, so the hot-plug fails.
>
> pciehp powers down the slot because you're returning a negative errno
> from pciehp_configure_device(). Please return 0 instead if
> pci_hp_add_bridge() fails.

Thanks for the suggestion. This is applicable to shpchp as well.

Best regards,
Nam