summary refs log tree commit diff
path: root/drivers/acpi/parser
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/acpi/parser')
-rw-r--r--drivers/acpi/parser/psloop.c9
-rw-r--r--drivers/acpi/parser/psxface.c7
2 files changed, 12 insertions, 4 deletions
diff --git a/drivers/acpi/parser/psloop.c b/drivers/acpi/parser/psloop.c
index decb2e9a049d..095672a1a722 100644
--- a/drivers/acpi/parser/psloop.c
+++ b/drivers/acpi/parser/psloop.c
@@ -407,9 +407,14 @@ acpi_ps_parse_loop (
 					INCREMENT_ARG_LIST (walk_state->arg_types);
 				}
 
+
 				/* Special processing for certain opcodes */
 
-				if ((walk_state->pass_number <= ACPI_IMODE_LOAD_PASS1) &&
+	/* TBD (remove): Temporary mechanism to disable this code if needed */
+
+#ifndef ACPI_NO_MODULE_LEVEL_CODE
+
+			 if ((walk_state->pass_number <= ACPI_IMODE_LOAD_PASS1) &&
 				   ((walk_state->parse_flags & ACPI_PARSE_DISASSEMBLE) == 0)) {
 					/*
 					 * We want to skip If/Else/While constructs during Pass1
@@ -434,7 +439,7 @@ acpi_ps_parse_loop (
 						break;
 					}
 				}
-
+#endif
 				switch (op->common.aml_opcode) {
 				case AML_METHOD_OP:
 
diff --git a/drivers/acpi/parser/psxface.c b/drivers/acpi/parser/psxface.c
index dba893648e84..5279b51e7787 100644
--- a/drivers/acpi/parser/psxface.c
+++ b/drivers/acpi/parser/psxface.c
@@ -138,11 +138,14 @@ acpi_psx_execute (
 	 * objects (such as Operation Regions) can be created during the
 	 * first pass parse.
 	 */
-	obj_desc->method.owning_id = acpi_ut_allocate_owner_id (ACPI_OWNER_TYPE_METHOD);
+	status = acpi_ut_allocate_owner_id (&obj_desc->method.owner_id);
+	if (ACPI_FAILURE (status)) {
+		goto cleanup2;
+	}
 
 	/* Create and initialize a new walk state */
 
-	walk_state = acpi_ds_create_walk_state (obj_desc->method.owning_id,
+	walk_state = acpi_ds_create_walk_state (obj_desc->method.owner_id,
 			   NULL, NULL, NULL);
 	if (!walk_state) {
 		status = AE_NO_MEMORY;