ACPI: Fix stale pointer access to flags.lockable
authorToshi Kani <toshi.kani@hp.com>
Fri, 26 Oct 2012 11:38:57 +0000 (13:38 +0200)
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>
Wed, 14 Nov 2012 23:16:01 +0000 (00:16 +0100)
commitb3c450c38075f414077e58439cff6bdce9e47df8
treeef1144223a556a10ad5f2ee06f2cfca456d2e156
parent594df89a59cf2a2afc22fe27f508dd864d1edb5f
ACPI: Fix stale pointer access to flags.lockable

During hot-remove, acpi_bus_hot_remove_device() calls ACPI _LCK
method when device->flags.lockable is set. However, this device
pointer is stale since the target acpi_device object has been
already kfree'd by acpi_bus_trim().

The flags.lockable indicates whether or not this ACPI object
implements _LCK method. Fix the stable pointer access by replacing
it with acpi_get_handle() to check if _LCK is implemented.

Signed-off-by: Toshi Kani <toshi.kani@hp.com>
Reviewed-by: Yasuaki Ishimatsu <isimatu.yasuaki@jp.fujitsu.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
drivers/acpi/scan.c