summaryrefslogtreecommitdiff
path: root/source/components/namespace
diff options
context:
space:
mode:
Diffstat (limited to 'source/components/namespace')
-rw-r--r--source/components/namespace/nsalloc.c1
-rw-r--r--source/components/namespace/nsinit.c1
-rw-r--r--source/components/namespace/nsobject.c20
-rw-r--r--source/components/namespace/nsprepkg.c40
-rw-r--r--source/components/namespace/nswalk.c1
-rw-r--r--source/components/namespace/nsxfeval.c1
-rw-r--r--source/components/namespace/nsxfobj.c1
7 files changed, 49 insertions, 16 deletions
diff --git a/source/components/namespace/nsalloc.c b/source/components/namespace/nsalloc.c
index 0f29a8491622..d465a37e5b8b 100644
--- a/source/components/namespace/nsalloc.c
+++ b/source/components/namespace/nsalloc.c
@@ -41,7 +41,6 @@
* POSSIBILITY OF SUCH DAMAGES.
*/
-
#define __NSALLOC_C__
#include "acpi.h"
diff --git a/source/components/namespace/nsinit.c b/source/components/namespace/nsinit.c
index 27ff7a13244c..53155977f39f 100644
--- a/source/components/namespace/nsinit.c
+++ b/source/components/namespace/nsinit.c
@@ -41,7 +41,6 @@
* POSSIBILITY OF SUCH DAMAGES.
*/
-
#define __NSXFINIT_C__
#include "acpi.h"
diff --git a/source/components/namespace/nsobject.c b/source/components/namespace/nsobject.c
index 9221ac00aa2e..5247ca61b41b 100644
--- a/source/components/namespace/nsobject.c
+++ b/source/components/namespace/nsobject.c
@@ -42,7 +42,6 @@
* POSSIBILITY OF SUCH DAMAGES.
*/
-
#define __NSOBJECT_C__
#include "acpi.h"
@@ -263,17 +262,16 @@ AcpiNsDetachObject (
{
Node->Object = Node->Object->Common.NextObject;
}
- }
-
- /*
- * Detach the object from any data objects (which are still held by
- * the namespace node)
- */
- if (ObjDesc->Common.NextObject &&
- ((ObjDesc->Common.NextObject)->Common.Type == ACPI_TYPE_LOCAL_DATA))
- {
- ObjDesc->Common.NextObject = NULL;
+ /*
+ * Detach the object from any data objects (which are still held by
+ * the namespace node)
+ */
+ if (ObjDesc->Common.NextObject &&
+ ((ObjDesc->Common.NextObject)->Common.Type == ACPI_TYPE_LOCAL_DATA))
+ {
+ ObjDesc->Common.NextObject = NULL;
+ }
}
/* Reset the node type to untyped */
diff --git a/source/components/namespace/nsprepkg.c b/source/components/namespace/nsprepkg.c
index 1e66b5aee2da..6cc3c700f29b 100644
--- a/source/components/namespace/nsprepkg.c
+++ b/source/components/namespace/nsprepkg.c
@@ -321,6 +321,46 @@ AcpiNsCheckPackage (
Status = AcpiNsCheckPackageList (Info, Package, Elements, Count);
break;
+ case ACPI_PTYPE2_UUID_PAIR:
+
+ /* The package must contain pairs of (UUID + type) */
+
+ if (Count & 1)
+ {
+ ExpectedCount = Count + 1;
+ goto PackageTooSmall;
+ }
+
+ while (Count > 0)
+ {
+ Status = AcpiNsCheckObjectType(Info, Elements,
+ Package->RetInfo.ObjectType1, 0);
+ if (ACPI_FAILURE(Status))
+ {
+ return (Status);
+ }
+
+ /* Validate length of the UUID buffer */
+
+ if ((*Elements)->Buffer.Length != 16)
+ {
+ ACPI_WARN_PREDEFINED ((AE_INFO, Info->FullPathname,
+ Info->NodeFlags, "Invalid length for UUID Buffer"));
+ return (AE_AML_OPERAND_VALUE);
+ }
+
+ Status = AcpiNsCheckObjectType(Info, Elements + 1,
+ Package->RetInfo.ObjectType2, 0);
+ if (ACPI_FAILURE(Status))
+ {
+ return (Status);
+ }
+
+ Elements += 2;
+ Count -= 2;
+ }
+ break;
+
default:
/* Should not get here if predefined info table is correct */
diff --git a/source/components/namespace/nswalk.c b/source/components/namespace/nswalk.c
index 48b5a27f0f53..147e4ce816c7 100644
--- a/source/components/namespace/nswalk.c
+++ b/source/components/namespace/nswalk.c
@@ -41,7 +41,6 @@
* POSSIBILITY OF SUCH DAMAGES.
*/
-
#define __NSWALK_C__
#include "acpi.h"
diff --git a/source/components/namespace/nsxfeval.c b/source/components/namespace/nsxfeval.c
index 1423da30349a..2b2663cabb56 100644
--- a/source/components/namespace/nsxfeval.c
+++ b/source/components/namespace/nsxfeval.c
@@ -42,7 +42,6 @@
* POSSIBILITY OF SUCH DAMAGES.
*/
-
#define __NSXFEVAL_C__
#define EXPORT_ACPI_INTERFACES
diff --git a/source/components/namespace/nsxfobj.c b/source/components/namespace/nsxfobj.c
index 86e109778524..69b656e12620 100644
--- a/source/components/namespace/nsxfobj.c
+++ b/source/components/namespace/nsxfobj.c
@@ -42,7 +42,6 @@
* POSSIBILITY OF SUCH DAMAGES.
*/
-
#define __NSXFOBJ_C__
#define EXPORT_ACPI_INTERFACES