Commit 034fdaa5 authored by Erik Kaneda's avatar Erik Kaneda Committed by Rafael J. Wysocki
Browse files

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: https://github.com/acpica/acpica/commit/cd66d0a5


Signed-off-by: default avatarErik Kaneda <erik.kaneda@intel.com>
Signed-off-by: default avatarBob Moore <robert.moore@intel.com>
Signed-off-by: default avatarRafael J. Wysocki <rafael.j.wysocki@intel.com>
parent 2c1779f5
Loading
Loading
Loading
Loading
+4 −1
Original line number Diff line number Diff line
@@ -177,7 +177,10 @@ acpi_ds_create_buffer_field(union acpi_parse_object *op,
					arg->common.value.string, ACPI_TYPE_ANY,
					ACPI_IMODE_LOAD_PASS1, flags,
					walk_state, &node);
		if (ACPI_FAILURE(status)) {
		if ((walk_state->parse_flags & ACPI_PARSE_DISASSEMBLE)
		    && status == AE_ALREADY_EXISTS) {
			status = AE_OK;
		} else if (ACPI_FAILURE(status)) {
			ACPI_ERROR_NAMESPACE(walk_state->scope_info,
					     arg->common.value.string, status);
			return_ACPI_STATUS(status);