summaryrefslogtreecommitdiff
path: root/source/components/namespace/nsinit.c
diff options
context:
space:
mode:
authorJung-uk Kim <jkim@FreeBSD.org>2017-07-28 17:44:36 +0000
committerJung-uk Kim <jkim@FreeBSD.org>2017-07-28 17:44:36 +0000
commit834d4c5613e9c57c0b9fba46fa717fd7fb9d5891 (patch)
tree610a3598ffcd1fdcb97c475a59bccac84f41bbdd /source/components/namespace/nsinit.c
parent744d47ba98ced2e2a7d3aff2f894136544386e34 (diff)
Notes
Diffstat (limited to 'source/components/namespace/nsinit.c')
-rw-r--r--source/components/namespace/nsinit.c14
1 files changed, 14 insertions, 0 deletions
diff --git a/source/components/namespace/nsinit.c b/source/components/namespace/nsinit.c
index d4286bf80656..2786e24c926e 100644
--- a/source/components/namespace/nsinit.c
+++ b/source/components/namespace/nsinit.c
@@ -535,6 +535,20 @@ AcpiNsInitOneObject (
Info->PackageInit++;
Status = AcpiDsGetPackageArguments (ObjDesc);
+ if (ACPI_FAILURE (Status))
+ {
+ break;
+ }
+
+ /*
+ * Resolve all named references in package objects (and all
+ * sub-packages). This action has been deferred until the entire
+ * namespace has been loaded, in order to support external and
+ * forward references from individual package elements (05/2017).
+ */
+ Status = AcpiUtWalkPackageTree (ObjDesc, NULL,
+ AcpiDsInitPackageElement, NULL);
+ ObjDesc->Package.Flags |= AOPOBJ_DATA_VALID;
break;
default: