Re: [patch 2.6.21-rc5-git] make /proc/acpi/wakeup more useful

Zhang Rui
2007-04-09T02:36:25Z

On Sat, 2007-04-07 at 13:08 -0700, David Brownell wrote:
> On Friday 06 April 2007 10:01 pm, Greg KH wrote:
>
> > Are you _sure_ you have a 1-to-1 relationship here? No multiple devices
> > pointing to the same acpi node? Or the other way around? If so, you
> > are going to have to change the name to be something more unique.
>
> I've wondered that too. The short answer: APCI only supports 1-1
> here.
Right.
> It will emit warnings if it tries to bind more than one ACPI
> device to a given "real" device ... but errors the other way are
> silently ignored.
>
My understanding is different.
First, one "real" device can only have one device.archdata.acpi_handle,
which means it can only be bound to one ACPI device.
Second, AE_ALREADY_EXISTS will be returned when ACPI tries to bind more
than one "real" devices to the same ACPI device.
> By adding a warning over this create-links patch, I found that the
> system in the $SUBJECT patch (and likely every ACPI system) has
> two different nodes that correspond to one ACPI node:
>
> /sys/devices/pci0000:00 ... pci root node
> /sys/devices/pnp0/00:00 ... id PNP0a03
> /sys/devices/acpi_system:00/device:00/PNP0A03:00 ... ditto
>
> Arguably that's too many sysfs nodes for one device...
>
> Plus, there's the issue of flakey ACPI tables; in the $SUBJECT patch
> both MDM and AUD nodes exist in the ACPI namespace, but they could
> only refer to one PCI device (with MDM as the wakeup source, not AUD
> as listed in the table). Or maybe that's another case where the ACPI
> code isn't handling the tables as sensibly as it might...
>
Could you attach this acpidump please? :)

Thanks,
Rui