diff options
author | Rafael J. Wysocki <rafael.j.wysocki@intel.com> | 2013-08-06 02:26:22 +0200 |
---|---|---|
committer | Rafael J. Wysocki <rafael.j.wysocki@intel.com> | 2013-08-06 02:26:22 +0200 |
commit | 623cf33cb055b1e81fa47e4fc16789b2c129e31e (patch) | |
tree | 7f0f56d1d21be4ce727b3d2433f9379b6a363dc3 /include/acpi/acpi_bus.h | |
parent | b3b301c5fed8a0868e56c98b922cb0c881b3857d (diff) |
ACPI / PM: Walk physical_node_list under physical_node_lock
The list of physical devices corresponding to an ACPI device
object is walked by acpi_system_wakeup_device_seq_show() and
physical_device_enable_wakeup() without taking that object's
physical_node_lock mutex. Since each of those functions may be
run at any time as a result of a user space action, the lack of
appropriate locking in them may lead to a kernel crash if that
happens during device hot-add or hot-remove involving the device
object in question.
Fix the issue by modifying acpi_system_wakeup_device_seq_show() and
physical_device_enable_wakeup() to use physical_node_lock as
appropriate.
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Cc: All <stable@vger.kernel.org>
Diffstat (limited to 'include/acpi/acpi_bus.h')
0 files changed, 0 insertions, 0 deletions