]> git.baikalelectronics.ru Git - kernel.git/commit
ACPI: Execute _PRW for devices reported as inactive or not present
authorRafael J. Wysocki <rjw@sisk.pl>
Fri, 17 Dec 2010 21:34:01 +0000 (22:34 +0100)
committerLen Brown <len.brown@intel.com>
Fri, 17 Dec 2010 21:39:11 +0000 (16:39 -0500)
commit8ab6de3f9943b3ff33e699fb8e43ff696bfa5663
treee62cdfdcbe11a8b644d60478f462d7af38bdbdf9
parent008a809c1876b772916100e73b1af144d2c29802
ACPI: Execute _PRW for devices reported as inactive or not present

If a device is reported as inactive or not present by its _STA
control method, acpi_bus_check_add() skips it without evaluating its
_PRW method.  This leads to a problem when the device's _PRW method
points to a GPE, because in that case the GPE may be enabled by
ACPICA during the subsequent acpi_update_gpes() call which, in
turn, may cause a GPE storm to appear.

To avoid this issue, make acpi_bus_check_add() evaluate _PRW for
inactive or not present devices and register the wakeup GPE
information returned by them, so that acpi_update_gpes() does not
enable their GPEs unnecessarily.

Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
Reported-by: Matthew Garrett <mjg@redhat.com>
Signed-off-by: Len Brown <len.brown@intel.com>
drivers/acpi/scan.c