[PATCH v1 04/27] ACPICA: Add alias node support in namespace handling

From: Rafael J. Wysocki

Date: Wed May 27 2026 - 14:21:23 EST


From: ikaros <void0red@xxxxxxxxx>

- Mark nodes as alias in ld_namespace2_begin() function.
- Skip teardown for alias nodes in acpi_ns_detach_object() function.
- Define ANOBJ_IS_ALIAS flag in aclocal.h.

Link: https://github.com/acpica/acpica/commit/cfcc46c4f717
Signed-off-by: ikaros <void0red@xxxxxxxxx>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>
---
drivers/acpi/acpica/aclocal.h | 1 +
drivers/acpi/acpica/nsobject.c | 6 ++++++
2 files changed, 7 insertions(+)

diff --git a/drivers/acpi/acpica/aclocal.h b/drivers/acpi/acpica/aclocal.h
index f98640086f4e..cbf09fb08d35 100644
--- a/drivers/acpi/acpica/aclocal.h
+++ b/drivers/acpi/acpica/aclocal.h
@@ -169,6 +169,7 @@ struct acpi_namespace_node {
#define ANOBJ_IS_EXTERNAL 0x08 /* iASL only: This object created via External() */
#define ANOBJ_METHOD_NO_RETVAL 0x10 /* iASL only: Method has no return value */
#define ANOBJ_METHOD_SOME_NO_RETVAL 0x20 /* iASL only: Method has at least one return value */
+#define ANOBJ_IS_ALIAS 0x40 /* iASL only: Node is an alias to another node */
#define ANOBJ_IS_REFERENCED 0x80 /* iASL only: Object was referenced */

/* Internal ACPI table management - master table list */
diff --git a/drivers/acpi/acpica/nsobject.c b/drivers/acpi/acpica/nsobject.c
index 79d86da1c892..a4ccacecca53 100644
--- a/drivers/acpi/acpica/nsobject.c
+++ b/drivers/acpi/acpica/nsobject.c
@@ -173,6 +173,12 @@ void acpi_ns_detach_object(struct acpi_namespace_node *node)

obj_desc = node->object;

+ /* Alias nodes point directly to other namespace nodes; skip teardown */
+ if (node->flags & ANOBJ_IS_ALIAS) {
+ node->object = NULL;
+ return_VOID;
+ }
+
if (!obj_desc || (obj_desc->common.type == ACPI_TYPE_LOCAL_DATA)) {
return_VOID;
}
--
2.51.0