Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 177480
b: refs/heads/master
c: d976591
h: refs/heads/master
v: v3
  • Loading branch information
Bob Moore authored and Len Brown committed Dec 15, 2009
1 parent 6c69281 commit faecb28
Show file tree
Hide file tree
Showing 2 changed files with 21 additions and 12 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: 90434c1c7c61ce7dd349f17f003b8813421aeadc
refs/heads/master: d97659112044c0c77b93c6199eee7ee884eb3cca
31 changes: 20 additions & 11 deletions trunk/drivers/acpi/acpica/dswload.c
Original file line number Diff line number Diff line change
Expand Up @@ -1052,9 +1052,22 @@ acpi_status acpi_ds_load2_end_op(struct acpi_walk_state *walk_state)
}

/*
* If we are executing a method, initialize the region
* The op_region is not fully parsed at this time. The only valid
* argument is the space_id. (We must save the address of the
* AML of the address and length operands)
*
* If we have a valid region, initialize it. The namespace is
* unlocked at this point.
*
* Need to unlock interpreter if it is locked (if we are running
* a control method), in order to allow _REG methods to be run
* during acpi_ev_initialize_region.
*/
if (walk_state->method_node) {
/*
* Executing a method: initialize the region and unlock
* the interpreter
*/
status =
acpi_ex_create_region(op->named.data,
op->named.length,
Expand All @@ -1063,21 +1076,17 @@ acpi_status acpi_ds_load2_end_op(struct acpi_walk_state *walk_state)
if (ACPI_FAILURE(status)) {
return (status);
}
}

/*
* The op_region is not fully parsed at this time. Only valid
* argument is the space_id. (We must save the address of the
* AML of the address and length operands)
*/
acpi_ex_exit_interpreter();
}

/*
* If we have a valid region, initialize it
* Namespace is NOT locked at this point.
*/
status =
acpi_ev_initialize_region
(acpi_ns_get_attached_object(node), FALSE);
if (walk_state->method_node) {
acpi_ex_enter_interpreter();
}

if (ACPI_FAILURE(status)) {
/*
* If AE_NOT_EXIST is returned, it is not fatal
Expand Down

0 comments on commit faecb28

Please sign in to comment.