ACPICA: Dispatcher: Fix an unbalanced lock exit path in acpi_ds_auto_serialize_method()
authorLv Zheng <zetalog@gmail.com>
Wed, 26 Oct 2016 07:40:20 +0000 (15:40 +0800)
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>
Fri, 28 Oct 2016 23:57:43 +0000 (01:57 +0200)
There is a lock unbalanced exit path in acpi_ds_initialize_method(),
this patch corrects it.

Fixes: 441ad11d078f (ACPICA: Dispatcher: Fix a mutex issue for method auto serialization)
Tested-by: Imre Deak <imre.deak@intel.com>
Signed-off-by: Lv Zheng <lv.zheng@intel.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
drivers/acpi/acpica/dsmethod.c

index c4028a8dacd59929706300efac49f83006cac5a4..5997e592e5a61a3a5711c37bd87bd2da721f8808 100644 (file)
@@ -128,7 +128,7 @@ acpi_ds_auto_serialize_method(struct acpi_namespace_node *node,
        if (ACPI_FAILURE(status)) {
                acpi_ds_delete_walk_state(walk_state);
                acpi_ps_free_op(op);
-               return_ACPI_STATUS(status);
+               goto unlock;
        }
 
        walk_state->descending_callback = acpi_ds_detect_named_opcodes;