summaryrefslogtreecommitdiff
path: root/drivers/acpi/acpica/dbexec.c
diff options
context:
space:
mode:
authorBob Moore <robert.moore@intel.com>2017-06-05 11:42:23 +0300
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>2017-06-27 23:25:27 +0300
commitfd13aaa850d6db06f90687486163d0dc609f2318 (patch)
treec7ced65bd98b990499b770c34bec78008e02293f /drivers/acpi/acpica/dbexec.c
parent9c0b6c49e8ae8bcbceffb0a417e8c7c912718694 (diff)
downloadlinux-fd13aaa850d6db06f90687486163d0dc609f2318.tar.xz
ACPICA: acpiexec: enhance local signal handler
ACPICA commit ffef4ae9a1b6032ebadeab2c2b806f0e585f0006 Add support for SIGSEGV Improve/cleanup SIGINT handling Link: https://github.com/acpica/acpica/commit/ffef4ae9 Signed-off-by: Bob Moore <robert.moore@intel.com> Signed-off-by: Lv Zheng <lv.zheng@intel.com> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Diffstat (limited to 'drivers/acpi/acpica/dbexec.c')
-rw-r--r--drivers/acpi/acpica/dbexec.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/drivers/acpi/acpica/dbexec.c b/drivers/acpi/acpica/dbexec.c
index b611cd92b5f5..3b30319752f0 100644
--- a/drivers/acpi/acpica/dbexec.c
+++ b/drivers/acpi/acpica/dbexec.c
@@ -181,6 +181,18 @@ acpi_db_execute_method(struct acpi_db_method_info *info,
acpi_gbl_method_executing = FALSE;
if (ACPI_FAILURE(status)) {
+ if ((status == AE_ABORT_METHOD) || acpi_gbl_abort_method) {
+
+ /* Clear the abort and fall back to the debugger prompt */
+
+ ACPI_EXCEPTION((AE_INFO, status,
+ "Aborting top-level method"));
+
+ acpi_gbl_abort_method = FALSE;
+ status = AE_OK;
+ goto cleanup;
+ }
+
ACPI_EXCEPTION((AE_INFO, status,
"while executing %s from debugger",
info->pathname));