diff options
author | Lv Zheng <lv.zheng@intel.com> | 2014-04-04 00:38:50 -0400 |
---|---|---|
committer | Rafael J. Wysocki <rafael.j.wysocki@intel.com> | 2014-04-20 16:59:39 -0400 |
commit | eb0c65bd2c276b4b346db545d938d4113e1a4e9c (patch) | |
tree | 9e08a70553f2f9d459eacf4491e45874e7b79669 | |
parent | 7f9fc99cde939187c1ee6dac115bdb76655cc798 (diff) |
ACPICA: Tables: Fix unbalanced table validations.
As acpi_tb_validate_table() returns failure on checksum verification without
doing invalidatation, all its invocations that are not done to a descriptor
stored in acpi_gbl_root_table_list are checked and balanced.
But this is not a real issue as the descritors that have been passed to
acpi_tb_add_table() are all virtual address tables and the validations are in
fact no-op. The cleanup can ensure that any future extensions made on
acpi_tb_add_table() to allow it to be invoked with physical address tables
will not trigger memory leakage regressions.
Signed-off-by: Lv Zheng <lv.zheng@intel.com>
Signed-off-by: Bob Moore <robert.moore@intel.com>
[rjw: Subject]
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
-rw-r--r-- | drivers/acpi/acpica/tbinstal.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/acpi/acpica/tbinstal.c b/drivers/acpi/acpica/tbinstal.c index 93a99ef03425..d3e1db225cb2 100644 --- a/drivers/acpi/acpica/tbinstal.c +++ b/drivers/acpi/acpica/tbinstal.c | |||
@@ -236,6 +236,7 @@ acpi_tb_add_table(struct acpi_table_desc *table_desc, u32 *table_index) | |||
236 | if (!table_desc->pointer) { | 236 | if (!table_desc->pointer) { |
237 | status = acpi_tb_validate_table(table_desc); | 237 | status = acpi_tb_validate_table(table_desc); |
238 | if (ACPI_FAILURE(status) || !table_desc->pointer) { | 238 | if (ACPI_FAILURE(status) || !table_desc->pointer) { |
239 | acpi_tb_invalidate_table(table_desc); | ||
239 | return_ACPI_STATUS(status); | 240 | return_ACPI_STATUS(status); |
240 | } | 241 | } |
241 | } | 242 | } |