diff options
author | Rafael J. Wysocki <rafael.j.wysocki@intel.com> | 2013-08-06 02:26:22 +0200 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2013-08-14 22:59:07 -0700 |
commit | b97f921b94b1e70d5de999fd820ccf8504dc6528 (patch) | |
tree | 66c405bdc3086d5519c2d16ce07a65016d2967f2 /include | |
parent | da712f3a8c493986b19fd0863b45607c34061ba6 (diff) |
ACPI / PM: Walk physical_node_list under physical_node_lock
commit 623cf33cb055b1e81fa47e4fc16789b2c129e31e upstream.
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>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'include')
0 files changed, 0 insertions, 0 deletions