Skip to content

Commit 034fdaa

Browse files
Erik Kanedarafaeljw
authored andcommitted
ACPICA: Disassembler: ignore AE_ALREADY_EXISTS status when parsing create operators
ACPICA commit cd66d0a50fdc9cc4dcd998e08e7aa3c4154bea2d Disassembler is intended to emit existing ASL code as-is. Therefore, error messages emitted during disassembly should be ignored or handled in a way such that the disassembler can continue to parse the AML. This change ignores AE_ALREADY_EXISTS errors during the deferred Op parsing for create operators in order to complete parsing ASL termlists. Link: acpica/acpica@cd66d0a5 Signed-off-by: Erik Kaneda <[email protected]> Signed-off-by: Bob Moore <[email protected]> Signed-off-by: Rafael J. Wysocki <[email protected]>
1 parent 2c1779f commit 034fdaa

File tree

1 file changed

+4
-1
lines changed

1 file changed

+4
-1
lines changed

drivers/acpi/acpica/dsfield.c

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -177,7 +177,10 @@ acpi_ds_create_buffer_field(union acpi_parse_object *op,
177177
arg->common.value.string, ACPI_TYPE_ANY,
178178
ACPI_IMODE_LOAD_PASS1, flags,
179179
walk_state, &node);
180-
if (ACPI_FAILURE(status)) {
180+
if ((walk_state->parse_flags & ACPI_PARSE_DISASSEMBLE)
181+
&& status == AE_ALREADY_EXISTS) {
182+
status = AE_OK;
183+
} else if (ACPI_FAILURE(status)) {
181184
ACPI_ERROR_NAMESPACE(walk_state->scope_info,
182185
arg->common.value.string, status);
183186
return_ACPI_STATUS(status);

0 commit comments

Comments
 (0)