Re: [PATCH] PCI / hotplug / ACPI: Check ignore_hotplug for all downstream devices

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Friday, May 22, 2015 04:44:16 PM Bjorn Helgaas wrote:
> [+cc Lorenzo, tiagdtd-lava]
> 
> On Wed, May 20, 2015 at 02:14:13AM +0200, Rafael J. Wysocki wrote:
> > From: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>
> > 
> > If the ignore_hotplug flag is set for a PCI device without an ACPI
> > companion and a bus check notification is received for an ancestor
> > bridge that is not the device's parent, ACPIPHP will ignore that
> > flag.
> > 
> > Namely, in that case acpiphp_check_bridge() is called for the target
> > bridge and if all of the devices immediately below the bridge are
> > still present, trim_stale_devices() will be called for each of them.
> > That function recursively walks the hierarchy downwards and removes
> > device objects corresponding to devices that don't appear to be
> > present any more.  Unfortunately, it only checks ignore_hotplug
> > for devices having ACPI companions, so it will remove the others
> > (if they don't respond) regardless of the ignore_hotplug value.
> > 
> > Fix the problem by making trim_stale_devices() take ignore_hotplug
> > into consideration regardless of whether or not an ACPI companion
> > is present for the device it has been called for.
> > 
> > Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>
> 
> Applied to pci/hotplug for v4.2, thanks!
> 
> I cc'd Lorenzo and tiagdtd-lava in hopes they can test this patch and see
> whether it resolves https://bugzilla.kernel.org/show_bug.cgi?id=61891 .
> 
> The branch with this patch applied is here:
> https://git.kernel.org/cgit/linux/kernel/git/helgaas/pci.git/log/?h=pci/hotplug

Thanks!

--
To unsubscribe from this list: send the line "unsubscribe linux-pci" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [DMA Engine]     [Linux Coverity]     [Linux USB]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Greybus]

  Powered by Linux