summaryrefslogtreecommitdiffstats
path: root/drivers/acpi/acpica/dsmethod.c
diff options
context:
space:
mode:
authorLv Zheng <lv.zheng@intel.com>2015-07-23 12:52:46 +0800
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>2015-07-23 23:09:06 +0200
commit0bac4295526c67e87ec24b29762140c38de7c86a (patch)
tree7bb435cab7d15dae1b193465c3f5091077a9b6dc /drivers/acpi/acpica/dsmethod.c
parentd1e7ffe50ba588ddf7de520990815c37f31776d8 (diff)
downloadlinux-0bac4295526c67e87ec24b29762140c38de7c86a.tar.bz2
ACPICA: Dispatcher: Move stack traversal code to dispatcher
ACPICA commit c8275e243b58fd4adfc0362bd704af41ed14bc75 This patch moves parts of acpi_dm_dump_method_info() to the dispatcher component. This patch also makes the new function dependent on ACPI_DEBUG_OUTPUT compile-stage definition so that it can be used by the trace facility. acpi_dm_dump_method_info() traverses method stack when an exception is encountered. Such traversal is needed to support method tracing for the exceptions. When an exception is encountered, the end indications of the aborted methods should be logged in order not to break the user space analysis tool. Lv Zheng. Link: https://github.com/acpica/acpica/commit/c8275e24 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>
Diffstat (limited to 'drivers/acpi/acpica/dsmethod.c')
-rw-r--r--drivers/acpi/acpica/dsmethod.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/drivers/acpi/acpica/dsmethod.c b/drivers/acpi/acpica/dsmethod.c
index 4abc2425de4b..e0ae8f4e9b35 100644
--- a/drivers/acpi/acpica/dsmethod.c
+++ b/drivers/acpi/acpica/dsmethod.c
@@ -251,14 +251,15 @@ acpi_ds_method_error(acpi_status status, struct acpi_walk_state * walk_state)
acpi_ds_clear_implicit_return(walk_state);
-#ifdef ACPI_DISASSEMBLER
if (ACPI_FAILURE(status)) {
+ acpi_ds_dump_method_stack(status, walk_state, walk_state->op);
/* Display method locals/args if disassembler is present */
- acpi_dm_dump_method_info(status, walk_state, walk_state->op);
- }
+#ifdef ACPI_DISASSEMBLER
+ acpi_dm_dump_method_info(status, walk_state);
#endif
+ }
return (status);
}