summaryrefslogtreecommitdiff
path: root/drivers/acpi/acpica/dsutils.c
diff options
context:
space:
mode:
authorBob Moore <robert.moore@intel.com>2016-08-04 11:42:42 +0300
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>2016-08-13 04:09:31 +0300
commit7fdb5cea9bf288eb6408538fa67f1559f433ab9d (patch)
treeefbf6f6a1ac6af652db7eed53b8ff9a5bd0dda98 /drivers/acpi/acpica/dsutils.c
parentfee4ab9c0cf223e9f0f2d9d2e5a2f24f6539ccbd (diff)
downloadlinux-7fdb5cea9bf288eb6408538fa67f1559f433ab9d.tar.xz
ACPICA: Interpreter: Remove temporary code for External() opcode
ACPICA commit f2d349f8a11efc0f438ad6903564f3a6755dc6b9 The interpreter should never see this opcode (it is used by disassemblers), so the final implementation is to return an error. Link: https://github.com/acpica/acpica/commit/f2d349f8 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/dsutils.c')
-rw-r--r--drivers/acpi/acpica/dsutils.c17
1 files changed, 8 insertions, 9 deletions
diff --git a/drivers/acpi/acpica/dsutils.c b/drivers/acpi/acpica/dsutils.c
index f393de9f5887..7d8ef52fb88d 100644
--- a/drivers/acpi/acpica/dsutils.c
+++ b/drivers/acpi/acpica/dsutils.c
@@ -565,15 +565,14 @@ acpi_ds_create_operand(struct acpi_walk_state *walk_state,
status = AE_OK;
} else if (parent_op->common.aml_opcode ==
AML_EXTERNAL_OP) {
-
- /* TBD: May only be temporary */
-
- obj_desc =
- acpi_ut_create_string_object((acpi_size)name_length);
-
- strncpy(obj_desc->string.pointer,
- name_string, name_length);
- status = AE_OK;
+ /*
+ * This opcode should never appear here. It is used only
+ * by AML disassemblers and is surrounded by an If(0)
+ * by the ASL compiler.
+ *
+ * Therefore, if we see it here, it is a serious error.
+ */
+ status = AE_AML_BAD_OPCODE;
} else {
/*
* We just plain didn't find it -- which is a