Commit 08e1d7c0290aaef6bc6d68be8df753ffec02a6ae
Committed by
Rafael J. Wysocki
1 parent
d18255795b
Exists in
master
and in
13 other branches
ACPICA: Enable auto-serialization as a default kernel behavior.
The previous commit "ACPICA: Add auto-serialization support for ill-behaved control methods" introduced the auto-serialization facility as a workaround that can be enabled by "acpi_auto_serialize": This feature marks control methods that create named objects as "serialized" to avoid unwanted AE_ALREADY_EXISTS control method evaluation failures. Enable method auto-serialization as the default kernel behavior. The new kernel parameter is also changed from "acpi_auto_serialize" to "acpi_no_auto_serialize" to reflect the default behavior. References: https://bugzilla.kernel.org/show_bug.cgi?id=52191 References: http://www.spinics.net/lists/linux-acpi/msg49496.html Signed-off-by: Lv Zheng <lv.zheng@intel.com> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Showing 3 changed files with 11 additions and 11 deletions Side-by-side Diff
Documentation/kernel-parameters.txt
... | ... | @@ -229,13 +229,13 @@ |
229 | 229 | use by PCI |
230 | 230 | Format: <irq>,<irq>... |
231 | 231 | |
232 | - acpi_auto_serialize [HW,ACPI] | |
233 | - Enable auto-serialization of AML methods | |
232 | + acpi_no_auto_serialize [HW,ACPI] | |
233 | + Disable auto-serialization of AML methods | |
234 | 234 | AML control methods that contain the opcodes to create |
235 | 235 | named objects will be marked as "Serialized" by the |
236 | 236 | auto-serialization feature. |
237 | - This feature is disabled by default. | |
238 | - This option allows to turn on the feature. | |
237 | + This feature is enabled by default. | |
238 | + This option allows to turn off the feature. | |
239 | 239 | |
240 | 240 | acpi_no_auto_ssdt [HW,ACPI] Disable automatic loading of SSDT |
241 | 241 |
drivers/acpi/acpica/acglobal.h
... | ... | @@ -99,7 +99,7 @@ |
99 | 99 | * that create named objects are marked Serialized in order to prevent |
100 | 100 | * possible run-time problems if they are entered by more than one thread. |
101 | 101 | */ |
102 | -ACPI_INIT_GLOBAL(u8, acpi_gbl_auto_serialize_methods, FALSE); | |
102 | +ACPI_INIT_GLOBAL(u8, acpi_gbl_auto_serialize_methods, TRUE); | |
103 | 103 | |
104 | 104 | /* |
105 | 105 | * Create the predefined _OSI method in the namespace? Default is TRUE |
drivers/acpi/osl.c
... | ... | @@ -1540,20 +1540,20 @@ |
1540 | 1540 | __setup("acpi_osi=", osi_setup); |
1541 | 1541 | |
1542 | 1542 | /* |
1543 | - * Enable the auto-serialization of named objects creation methods. | |
1543 | + * Disable the auto-serialization of named objects creation methods. | |
1544 | 1544 | * |
1545 | - * This feature is disabled by default. It marks the AML control methods | |
1545 | + * This feature is enabled by default. It marks the AML control methods | |
1546 | 1546 | * that contain the opcodes to create named objects as "Serialized". |
1547 | 1547 | */ |
1548 | -static int __init acpi_auto_serialize_setup(char *str) | |
1548 | +static int __init acpi_no_auto_serialize_setup(char *str) | |
1549 | 1549 | { |
1550 | - acpi_gbl_auto_serialize_methods = TRUE; | |
1551 | - pr_info("ACPI: auto-serialization enabled\n"); | |
1550 | + acpi_gbl_auto_serialize_methods = FALSE; | |
1551 | + pr_info("ACPI: auto-serialization disabled\n"); | |
1552 | 1552 | |
1553 | 1553 | return 1; |
1554 | 1554 | } |
1555 | 1555 | |
1556 | -__setup("acpi_auto_serialize", acpi_auto_serialize_setup); | |
1556 | +__setup("acpi_no_auto_serialize", acpi_no_auto_serialize_setup); | |
1557 | 1557 | |
1558 | 1558 | /* Check of resource interference between native drivers and ACPI |
1559 | 1559 | * OperationRegions (SystemIO and System Memory only). |