[PATCH v2 0/3] ACPICA: Interpreter: Fix regressions in lock order improvement

From: Lv Zheng
Date: Wed Oct 26 2016 - 03:40:24 EST


This patchset fixes regressions in ACPICA intepreter lock order
improvement.

Patches tested with customized ACPI table where _PS0/_PS3 methods are
customized to invoke a serialized control method which creates named
objects. When pm_async=yes, AE_ALREADY_EXISTS can be seen in suspend/resume
process. This is an existing issue, triggered in 4.9-rc1 by ACPICA
interpreter lock order fixes, and can be fixed by [PATCH 1] in this series.

v2:
1. Remove non-regression-fixes.
2. Add "Fixes" tags.

Lv Zheng (3):
ACPICA: Dispatcher: Fix order issue of method termination
ACPICA: Dispatcher: Fix an unbalanced lock exit path in
acpi_ds_auto_serialize_method()
ACPICA: Dispatcher: Tune interpreter lock around
acpi_ev_initialize_region()

drivers/acpi/acpica/dsinit.c | 11 +++-------
drivers/acpi/acpica/dsmethod.c | 50 +++++++++++++++++++-----------------------
drivers/acpi/acpica/dswload2.c | 2 --
drivers/acpi/acpica/evrgnini.c | 3 +++
drivers/acpi/acpica/nsload.c | 2 ++
5 files changed, 30 insertions(+), 38 deletions(-)

--
2.7.4