ACPICA: Executer: Add back pointing reference of method operand
authorLv Zheng <lv.zheng@intel.com>
Thu, 23 Jul 2015 04:52:31 +0000 (12:52 +0800)
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>
Thu, 23 Jul 2015 21:09:06 +0000 (23:09 +0200)
ACPICA commit 9dcd124e914e87495fbd1786d9484b962e0823e0

This patch adds back pointing reference of the namespace node for a method
operand. The namespace node then can be used in
acpi_ds_terminate_control_method() to obtain method full path to be used by
tracing facilities. Lv Zheng.

Link: https://github.com/acpica/acpica/commit/9dcd124e
Signed-off-by: Lv Zheng <lv.zheng@intel.com>
Signed-off-by: Bob Moore <robert.moore@intel.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
drivers/acpi/acpica/acobject.h
drivers/acpi/acpica/excreate.c
drivers/acpi/acpica/utdelete.c

index c81d98d..0bd02c4 100644 (file)
@@ -176,6 +176,7 @@ struct acpi_object_method {
        u8 param_count;
        u8 sync_level;
        union acpi_operand_object *mutex;
+       union acpi_operand_object *node;
        u8 *aml_start;
        union {
                acpi_internal_method implementation;
index aaeea48..ccb7219 100644 (file)
@@ -486,6 +486,7 @@ acpi_ex_create_method(u8 * aml_start,
 
        obj_desc->method.aml_start = aml_start;
        obj_desc->method.aml_length = aml_length;
+       obj_desc->method.node = operand[0];
 
        /*
         * Disassemble the method flags. Split off the arg_count, Serialized
index 71fce38..1638312 100644 (file)
@@ -209,6 +209,9 @@ static void acpi_ut_delete_internal_obj(union acpi_operand_object *object)
                        acpi_ut_delete_object_desc(object->method.mutex);
                        object->method.mutex = NULL;
                }
+               if (object->method.node) {
+                       object->method.node = NULL;
+               }
                break;
 
        case ACPI_TYPE_REGION: