Re: [PATCH 8/9] PCI / ACPI / PM: Platform support for PCI PME wake-up (rev. 7)

Gary Hade
2010-02-08T17:53:33Z

On Sat, Feb 06, 2010 at 09:11:56PM +0100, Rafael J. Wysocki wrote:
> On Saturday 06 February 2010, Bjorn Helgaas wrote:
> > On Sunday 10 January 2010 07:01:03 am Rafael J. Wysocki wrote:
> > > From: Rafael J. Wysocki <rjw@sisk.pl>
> > >
> > > Although the majority of PCI devices can generate PMEs that in
> > > principle may be used to wake up devices suspended at run time,
> > > platform support is generally necessary to convert PMEs into wake-up
> > > events that can be delivered to the kernel. If ACPI is used for this
> > > purpose, a PME generated by a PCI device will trigger the ACPI GPE
> > > associated with the device to generate an ACPI wake-up event that we
> > > can set up a handler for, provided that everything is configured
> > > correctly.
> >
> > I think acpiphp needs a little attention after this patch. Gary
> > Hade noticed while testing Jesse's linux-next branch that acpiphp
> > complains like this:
> >
> > acpiphp: ACPI Hot Plug PCI Controller Driver version: 0.5
> > acpiphp: Slot [9] registered
> > acpiphp: Slot [10] registered
> > acpiphp_glue: failed to register interrupt notify handler
> > acpiphp: Slot [6] registered
> > acpiphp_glue: failed to register interrupt notify handler
> >
> > I reproduced this on an HP rx3600 (ia64), and found that acpiphp
> > doesn't complain on commit 82533a617f453, but it *does* complain
> > on commit fb3383bb4ac6e, which seems to be this patch.
>
> I can't see the possible reason looking at the code alone.
>
> Could you add a debug printk() printing the error code returned by
> pci_acpi_add_hp_notifier() in acpiphp_glue.c:register_slot(), please?

Rafael, On the system where I ran into the problem it returns
AE_NOT_FOUND. See below.

Gary

--
Gary Hade
System x Enablement
IBM Linux Technology Center
503-578-4503 IBM T/L: 775-4503
garyhade@us.ibm.com
http://www.ibm.com/linux/ltc

[ 188.347195] pci_hotplug: PCI Hot Plug PCI Core version: 0.5
[ 188.374707] acpiphp: ACPI Hot Plug PCI Controller Driver version: 0.5
[ 188.375125] acpiphp_glue: found PCI host-bus bridge with hot-pluggable slots
[ 188.375156] acpiphp_glue: found ACPI PCI Hotplug slot 1 at PCI 0000:02:01
[ 188.375187] acpiphp: Slot [1] registered
[ 188.375192] register_slot: status=0x5
[ 188.375194] acpiphp_glue: failed to register interrupt notify handler
[ 188.375262] acpiphp_glue: found PCI host-bus bridge with hot-pluggable slots
[ 188.375289] acpiphp_glue: found ACPI PCI Hotplug slot 2 at PCI 0000:06:01
[ 188.375315] acpiphp: Slot [2] registered
[ 188.375319] register_slot: status=0x5
[ 188.375321] acpiphp_glue: failed to register interrupt notify handler
[ 188.375430] acpiphp_glue: found PCI-to-PCI bridge at PCI 0000:0a:00.0
[ 188.375464] acpiphp_glue: found ACPI PCI Hotplug slot 3 at PCI 0000:0b:00
[ 188.375486] acpiphp: Slot [3] registered
[ 188.375490] register_slot: status=0x5
[ 188.375492] acpiphp_glue: failed to register interrupt notify handler
[ 188.375673] acpiphp_glue: found PCI-to-PCI bridge at PCI 0000:0f:00.0
[ 188.375705] acpiphp_glue: found ACPI PCI Hotplug slot 4 at PCI 0000:10:00
[ 188.375727] acpiphp: Slot [4] registered
[ 188.375731] register_slot: status=0x5
[ 188.375733] acpiphp_glue: failed to register interrupt notify handler
[ 188.375917] acpiphp_glue: found PCI-to-PCI bridge at PCI 0000:14:00.0
[ 188.375949] acpiphp_glue: found ACPI PCI Hotplug slot 5 at PCI 0000:15:00
[ 188.375970] acpiphp: Slot [5] registered
[ 188.375974] register_slot: status=0x5
[ 188.375976] acpiphp_glue: failed to register interrupt notify handler
[ 188.376160] acpiphp_glue: found PCI-to-PCI bridge at PCI 0000:19:00.0
[ 188.376194] acpiphp_glue: found ACPI PCI Hotplug slot 6 at PCI 0000:1a:00
[ 188.376217] acpiphp: Slot [6] registered
[ 188.376221] register_slot: status=0x5
[ 188.376223] acpiphp_glue: failed to register interrupt notify handler
[ 188.376344] acpiphp_glue: Total 0 slots