From 74367267ebbc6ee17f0ee72aabf12f6216409e99 Mon Sep 17 00:00:00 2001 From: Bob Moore Date: Fri, 17 Aug 2012 10:30:28 +0800 Subject: [PATCH] --- yaml --- r: 331699 b: refs/heads/master c: 28f538b56d321dd5e027267f8240f06ce045e0aa h: refs/heads/master i: 331697: ab6303ae5a5c10e89ff8b9412207051d3c9c9060 331695: cbd8a2bb7dba1e64950d2a411a76916b103315f5 v: v3 --- [refs] | 2 +- trunk/drivers/acpi/acpica/dswload.c | 14 ++++++++++++++ trunk/drivers/acpi/acpica/dswload2.c | 14 ++++++++++++++ 3 files changed, 29 insertions(+), 1 deletion(-) diff --git a/[refs] b/[refs] index 9994c133a983..2ed7f3b74f50 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: a950c135e5b2be6ef7518d54d98a7901db1b377a +refs/heads/master: 28f538b56d321dd5e027267f8240f06ce045e0aa diff --git a/trunk/drivers/acpi/acpica/dswload.c b/trunk/drivers/acpi/acpica/dswload.c index 552aa3a50c84..557510084c7a 100644 --- a/trunk/drivers/acpi/acpica/dswload.c +++ b/trunk/drivers/acpi/acpica/dswload.c @@ -230,6 +230,20 @@ acpi_ds_load1_begin_op(struct acpi_walk_state * walk_state, walk_state->scope_info->common.value = ACPI_TYPE_ANY; break; + case ACPI_TYPE_METHOD: + + /* + * Allow scope change to root during execution of module-level + * code. Root is typed METHOD during this time. + */ + if ((node == acpi_gbl_root_node) && + (walk_state-> + parse_flags & ACPI_PARSE_MODULE_LEVEL)) { + break; + } + + /*lint -fallthrough */ + default: /* All other types are an error */ diff --git a/trunk/drivers/acpi/acpica/dswload2.c b/trunk/drivers/acpi/acpica/dswload2.c index ae7147724763..89c0114210c0 100644 --- a/trunk/drivers/acpi/acpica/dswload2.c +++ b/trunk/drivers/acpi/acpica/dswload2.c @@ -230,6 +230,20 @@ acpi_ds_load2_begin_op(struct acpi_walk_state *walk_state, walk_state->scope_info->common.value = ACPI_TYPE_ANY; break; + case ACPI_TYPE_METHOD: + + /* + * Allow scope change to root during execution of module-level + * code. Root is typed METHOD during this time. + */ + if ((node == acpi_gbl_root_node) && + (walk_state-> + parse_flags & ACPI_PARSE_MODULE_LEVEL)) { + break; + } + + /*lint -fallthrough */ + default: /* All other types are an error */