ACPICA: Debugger: Reduce verbosity for module-level code errors.
authorBob Moore <robert.moore@intel.com>
Fri, 1 Jun 2018 19:06:42 +0000 (12:06 -0700)
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>
Wed, 6 Jun 2018 06:53:42 +0000 (08:53 +0200)
Module-level code execution has no method arguments or locals,
so do not attempt to output values for these.

Signed-off-by: Bob Moore <robert.moore@intel.com>
Signed-off-by: Erik Schmauss <erik.schmauss@intel.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
drivers/acpi/acpica/dbobject.c
drivers/acpi/acpica/dsdebug.c

index 58c3253b533aaf4aeda8f8862d0d0e7974c2ed19..a1c76bf211227d672e992982a11e3aa24dd8bbcf 100644 (file)
@@ -35,6 +35,15 @@ void
 acpi_db_dump_method_info(acpi_status status, struct acpi_walk_state *walk_state)
 {
        struct acpi_thread_state *thread;
+       struct acpi_namespace_node *node;
+
+       node = walk_state->method_node;
+
+       /* There are no locals or arguments for the module-level code case */
+
+       if (node == acpi_gbl_root_node) {
+               return;
+       }
 
        /* Ignore control codes, they are not errors */
 
@@ -384,8 +393,14 @@ void acpi_db_decode_locals(struct acpi_walk_state *walk_state)
        struct acpi_namespace_node *node;
        u8 display_locals = FALSE;
 
-       obj_desc = walk_state->method_desc;
        node = walk_state->method_node;
+       obj_desc = walk_state->method_desc;
+
+       /* There are no locals for the module-level code case */
+
+       if (node == acpi_gbl_root_node) {
+               return;
+       }
 
        if (!node) {
                acpi_os_printf
@@ -452,6 +467,12 @@ void acpi_db_decode_arguments(struct acpi_walk_state *walk_state)
        node = walk_state->method_node;
        obj_desc = walk_state->method_desc;
 
+       /* There are no arguments for the module-level code case */
+
+       if (node == acpi_gbl_root_node) {
+               return;
+       }
+
        if (!node) {
                acpi_os_printf
                    ("No method node (Executing subtree for buffer or opregion)\n");
index 70a2fca60306b2e96ce2e757220f2a586bd7a4d6..9d33f0bb28855050b5d67302dd0ad58bc6c66631 100644 (file)
@@ -162,9 +162,15 @@ acpi_ds_dump_method_stack(acpi_status status,
                                op->common.next = NULL;
 
 #ifdef ACPI_DISASSEMBLER
-                               acpi_os_printf("Failed at ");
-                               acpi_dm_disassemble(next_walk_state, op,
-                                                   ACPI_UINT32_MAX);
+                               if (walk_state->method_node !=
+                                   acpi_gbl_root_node) {
+
+                                       /* More verbose if not module-level code */
+
+                                       acpi_os_printf("Failed at ");
+                                       acpi_dm_disassemble(next_walk_state, op,
+                                                           ACPI_UINT32_MAX);
+                               }
 #endif
                                op->common.next = next;
                        }