diff options
author | Trond Myklebust <trond.myklebust@primarydata.com> | 2016-07-25 00:09:02 +0300 |
---|---|---|
committer | Trond Myklebust <trond.myklebust@primarydata.com> | 2016-07-25 00:09:02 +0300 |
commit | 1592c4d62a89bbca895c568d65ce290dfbc36ecc (patch) | |
tree | 6b979bc02ded2ea7e644c34e6939ffbbb7ee001d /drivers/acpi/acpica/nsload.c | |
parent | 668f455dac57050e33a43ff5fe006f6cd947fc65 (diff) | |
parent | f0445670bd81cae9f46399d98fef5cd1622d9776 (diff) | |
download | linux-1592c4d62a89bbca895c568d65ce290dfbc36ecc.tar.xz |
Merge branch 'nfs-rdma'
Diffstat (limited to 'drivers/acpi/acpica/nsload.c')
-rw-r--r-- | drivers/acpi/acpica/nsload.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/drivers/acpi/acpica/nsload.c b/drivers/acpi/acpica/nsload.c index b5e2b0ada0ab..297f6aacd7d4 100644 --- a/drivers/acpi/acpica/nsload.c +++ b/drivers/acpi/acpica/nsload.c @@ -46,6 +46,7 @@ #include "acnamesp.h" #include "acdispat.h" #include "actables.h" +#include "acinterp.h" #define _COMPONENT ACPI_NAMESPACE ACPI_MODULE_NAME("nsload") @@ -78,6 +79,8 @@ acpi_ns_load_table(u32 table_index, struct acpi_namespace_node *node) ACPI_FUNCTION_TRACE(ns_load_table); + acpi_ex_enter_interpreter(); + /* * Parse the table and load the namespace with all named * objects found within. Control methods are NOT parsed @@ -89,7 +92,7 @@ acpi_ns_load_table(u32 table_index, struct acpi_namespace_node *node) */ status = acpi_ut_acquire_mutex(ACPI_MTX_NAMESPACE); if (ACPI_FAILURE(status)) { - return_ACPI_STATUS(status); + goto unlock_interp; } /* If table already loaded into namespace, just return */ @@ -130,6 +133,8 @@ acpi_ns_load_table(u32 table_index, struct acpi_namespace_node *node) unlock: (void)acpi_ut_release_mutex(ACPI_MTX_NAMESPACE); +unlock_interp: + (void)acpi_ex_exit_interpreter(); if (ACPI_FAILURE(status)) { return_ACPI_STATUS(status); |