Skip to contentSkip to conversation

Patch "ACPICA: Tables: Fix regression introduced by a too early mechanism enabling" has been added to the 4.11-stable tree

PATCH [email protected] 1 participant 1 message Jun 5, 2017

Subsystems (3)
lore
Share & tools
lore

[email protected]

author maintainer Applied
#0 lore raw

This is a note to let you know that I've just added the patch titled

ACPICA: Tables: Fix regression introduced by a too early mechanism enabling

to the 4.11-stable tree which can be found at:
http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:
acpica-tables-fix-regression-introduced-by-a-too-early-mechanism-enabling.patch
and it can be found in the queue-4.11 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree, please let <[email protected]> know about it.

Quoted 1 line

From 2ea65321b83539afc1d45c1bea39c55ab42af62b Mon Sep 17 00:00:00 2001

From: Lv Zheng <[email protected]>
Date: Tue, 9 May 2017 13:57:31 +0800
Subject: ACPICA: Tables: Fix regression introduced by a too early mechanism enabling

From: Lv Zheng <[email protected]>

commit 2ea65321b83539afc1d45c1bea39c55ab42af62b upstream.

In the Linux kernel, acpi_get_table() "clones" haven't been fully balanced by acpi_put_table() invocations. In upstream ACPICA, due to the design change, there are also unbalanced acpi_get_table_by_index() invocations requiring special care.

acpi_get_table() reference counting mismatches may occor due to that and printing error messages related to them is not useful at this point. The strict balanced validation count check should only be enabled after confirming that all invocations are safe and aligned with their designed purposes.

Thus this patch removes the error value returned by acpi_tb_get_table() in that case along with the accompanying error message to fix the issue.

Fixes 174cc7187e6f (ACPICA: Tables: Back port acpi_get_table_with_size() and early_acpi_os_unmap_memory() from Linux kernel)
[ rjw: Changelog ]
---
 drivers/acpi/acpica/tbutils.c |    4 ----
 1 file changed, 4 deletions(-)
drivers/acpi/acpica/tbutils.c +0 -4
@@ -418,11 +418,7 @@ acpi_tb_get_table(struct acpi_table_desc
 
 	table_desc->validation_count++;
 	if (table_desc->validation_count == 0) {
-		ACPI_ERROR((AE_INFO,
-			    "Table %p, Validation count is zero after increment\n",
-			    table_desc));
 		table_desc->validation_count--;
-		return_ACPI_STATUS(AE_LIMIT);
 	}
 
 	*out_table = table_desc->pointer;

Patches currently in stable-queue which might be from [email protected] are

queue-4.11/revert-acpi-button-remove-lid_init_state-method-mode.patch queue-4.11/acpica-tables-fix-regression-introduced-by-a-too-early-mechanism-enabling.patch