patch-2.4.23 linux-2.4.23/drivers/acpi/dispatcher/dswload.c
Next file: linux-2.4.23/drivers/acpi/dispatcher/dswscope.c
Previous file: linux-2.4.23/drivers/acpi/dispatcher/dsutils.c
Back to the patch index
Back to the overall index
- Lines: 33
- Date:
2003-11-28 10:26:19.000000000 -0800
- Orig file:
linux-2.4.22/drivers/acpi/dispatcher/dswload.c
- Orig date:
2003-08-25 04:44:41.000000000 -0700
diff -urN linux-2.4.22/drivers/acpi/dispatcher/dswload.c linux-2.4.23/drivers/acpi/dispatcher/dswload.c
@@ -248,6 +248,14 @@
* buffer_field, or Package), the name of the object is already
* in the namespace.
*/
+ if (walk_state->deferred_node) {
+ /* This name is already in the namespace, get the node */
+
+ node = walk_state->deferred_node;
+ status = AE_OK;
+ break;
+ }
+
flags = ACPI_NS_NO_UPSEARCH;
if ((walk_state->opcode != AML_SCOPE_OP) &&
(!(walk_state->parse_flags & ACPI_PARSE_DEFERRED_OP))) {
@@ -589,7 +597,17 @@
* Enter the named type into the internal namespace. We enter the name
* as we go downward in the parse tree. Any necessary subobjects that involve
* arguments to the opcode must be created as we go back up the parse tree later.
+ *
+ * Note: Name may already exist if we are executing a deferred opcode.
*/
+ if (walk_state->deferred_node) {
+ /* This name is already in the namespace, get the node */
+
+ node = walk_state->deferred_node;
+ status = AE_OK;
+ break;
+ }
+
status = acpi_ns_lookup (walk_state->scope_info, buffer_ptr, object_type,
ACPI_IMODE_EXECUTE, ACPI_NS_NO_UPSEARCH, walk_state, &(node));
break;
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)