Skip to content

Commit c3bc5f6

Browse files
Wer-Wolfrafaeljw
authored andcommitted
ACPICA: Fix asltests using the Fatal() opcode
Some asltests test the behavior of the Fatal() opcode and thus require that said opcode does not return an error when called. Introduce a compile-time option called ACPI_CONTINUE_ON_FATAL to instruct the executor to continue the execution of AML bytecode when encountering a Fatal() opcode. Also update the asltest to use this new option. Fixes: ("Abort AML bytecode execution when executing AML_FATAL_OP") Link: acpica/acpica@428b3410c490 Signed-off-by: Armin Wolf <W_Armin@gmx.de> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com> Link: https://patch.msgid.link/2052065.usQuhbGJ8B@rafael.j.wysocki
1 parent 091c4af commit c3bc5f6

1 file changed

Lines changed: 7 additions & 0 deletions

File tree

drivers/acpi/acpica/exoparg3.c

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -72,11 +72,18 @@ acpi_status acpi_ex_opcode_3A_0T_0R(struct acpi_walk_state *walk_state)
7272

7373
acpi_os_signal(ACPI_SIGNAL_FATAL, &fatal);
7474

75+
#ifndef ACPI_CONTINUE_ON_FATAL
7576
/*
7677
* Might return while OS is shutting down, so abort the AML execution
7778
* by returning an error.
7879
*/
7980
return_ACPI_STATUS(AE_ERROR);
81+
#else
82+
/*
83+
* The alstests require that the Fatal() opcode does not return an error.
84+
*/
85+
return_ACPI_STATUS(AE_OK);
86+
#endif
8087

8188
case AML_EXTERNAL_OP:
8289
/*

0 commit comments

Comments
 (0)