Re: ACPICA 20140214 auto-serialize weirds my machine...

From: Rafael J. Wysocki
Date: Fri Mar 14 2014 - 12:11:38 EST


On 3/14/2014 5:05 PM, Valdis Kletnieks wrote:
Surprisingly enough, this hasn't seemed to have bitten many Linux people yet,
Google only finds a BSD thread (where the same ACPICA code is in use):

http://comments.gmane.org/gmane.os.dragonfly-bsd.user/1817

I found this, but haven't tried it yet:

commit 5f1cb4a92e4c4aabd139ff9ca1e11c0e2db2ac59
Author: Lv Zheng <lv.zheng@xxxxxxxxx>
Date: Wed Feb 26 10:32:01 2014 +0800

ACPICA: Remove global option to serialize all control methods.

With the addition of the auto-serialization feature, this option
is obsolete and is completely removed. Lv Zheng.

This patch also updates acpi_serialize kernel parameter using the
new auto-serialization feature - acpi_gbl_auto_serialize_methods.

This looks like a user nightmare waiting to happen, because:

- acpi_serialize [HW,ACPI] force serialization of AML methods
+ acpi_serialize= [HW,ACPI] configure auto-serialization of AML methods

Re-using a kernel parameter name with different semantics is just asking for trouble.

I get this in my dmesg, and then I end up with all sorts of ACPI-related
weirdness - everything from 4 or 5 temperature sensors evaporating to it
claiming that my laptop doesn't have a battery bay (it may also be related to
an issue I'm seeing with multiple graphics monitors as well, but I haven't
verified that yet).

We're going to need a better way to deal with this before it gets to
mainline....

We have a commit that removes this command line argument already.

But those messages:


[ 0.119344] ACPI: Executed 1 blocks of module-level executable AML code
[ 0.135282] ACPI Error: Cannot acquire Mutex for method [SNVC], current SyncLevel is too large (1) (20140214/dsmethod-362)
[ 0.135288] ACPI Error: Method parse/execution failed [\SMBF] (Node ffff88012d026ec0), AE_AML_MUTEX_ORDER (20140214/psparse-536)
[ 0.135298] ACPI Error: Method parse/execution failed [\GENS] (Node ffff88012d026e70), AE_AML_MUTEX_ORDER (20140214/psparse-536)
[ 0.135307] ACPI Error: Method parse/execution failed [\EISC] (Node ffff88012d02d560), AE_AML_MUTEX_ORDER (20140214/psparse-536)
[ 0.135320] ACPI Error: Method parse/execution failed [\_SB_.PCI0.LPCB.ECDV.ECR1] (Node ffff88012d02d470), AE_AML_MUTEX_ORDER (20140214/psparse-536)
[ 0.135328] ACPI Error: Method parse/execution failed [\ECRB] (Node ffff88012d02d5d8), AE_AML_MUTEX_ORDER (20140214/psparse-536)
[ 0.135336] ACPI Error: Method parse/execution failed [\ECG5] (Node ffff88012d02d740), AE_AML_MUTEX_ORDER (20140214/psparse-536)
[ 0.135343] ACPI Error: Method parse/execution failed [\_SB_.PCI0.LPCB.EINI] (Node ffff88012d02db00), AE_AML_MUTEX_ORDER (20140214/psparse-536)
[ 0.135351] ACPI Error: Method parse/execution failed [\EV3_] (Node ffff88012d0314c0), AE_AML_MUTEX_ORDER (20140214/psparse-536)
[ 0.135359] ACPI Error: Method parse/execution failed [\_SB_.PCI0._INI] (Node ffff88012d026920), AE_AML_MUTEX_ORDER (20140214/psparse-536)
[ 0.135574] [Firmware Bug]: ACPI: BIOS _OSI(Linux) query ignored
[ 0.136283] ACPI: SSDT 0x00000000CE789598 000523 (v01 PmRef Cpu0Cst 00003001 INTL 20051117)
[ 0.138312] ACPI: Dynamic OEM Table Load:
[ 0.138316] ACPI: SSDT 0x0000000000000000 000523 (v01 PmRef Cpu0Cst 00003001 INTL 20051117)
[ 0.141483] ACPI: SSDT 0x00000000CE78AA98 000303 (v01 PmRef ApIst 00003000 INTL 20051117)
[ 0.143683] ACPI: Dynamic OEM Table Load:
[ 0.143687] ACPI: SSDT 0x0000000000000000 000303 (v01 PmRef ApIst 00003000 INTL 20051117)
[ 0.146215] ACPI: SSDT 0x00000000CE790C18 000119 (v01 PmRef ApCst 00003000 INTL 20051117)
[ 0.148279] ACPI: Dynamic OEM Table Load:
[ 0.148282] ACPI: SSDT 0x0000000000000000 000119 (v01 PmRef ApCst 00003000 INTL 20051117)
[ 0.152678] ACPI Error: Cannot acquire Mutex for method [SNVC], current SyncLevel is too large (1) (20140214/dsmethod-362)
[ 0.152684] ACPI Error: Method parse/execution failed [\SMBF] (Node ffff88012d026ec0), AE_AML_MUTEX_ORDER (20140214/psparse-536)
[ 0.152693] ACPI Error: Method parse/execution failed [\GENS] (Node ffff88012d026e70), AE_AML_MUTEX_ORDER (20140214/psparse-536)
[ 0.152702] ACPI Error: Method parse/execution failed [\EISC] (Node ffff88012d02d560), AE_AML_MUTEX_ORDER (20140214/psparse-536)
[ 0.152714] ACPI Error: Method parse/execution failed [\_SB_.PCI0.LPCB.ECDV.ECR1] (Node ffff88012d02d470), AE_AML_MUTEX_ORDER (20140214/psparse-536)
[ 0.152722] ACPI Error: Method parse/execution failed [\ECBT] (Node ffff88012d02d588), AE_AML_MUTEX_ORDER (20140214/psparse-536)
[ 0.152730] ACPI Error: Method parse/execution failed [\ECG3] (Node ffff88012d02d6c8), AE_AML_MUTEX_ORDER (20140214/psparse-536)
[ 0.152737] ACPI Error: Method parse/execution failed [\_SB_.PCI0.LPCB.ECDV.ECIN] (Node ffff88012d02d3d0), AE_AML_MUTEX_ORDER (20140214/psparse-536)
[ 0.152745] ACPI Error: Method parse/execution failed [\_SB_.PCI0.LPCB.ECDV._REG] (Node ffff88012d02d3f8), AE_AML_MUTEX_ORDER (20140214/psparse-536)
[ 0.152818] ACPI: Interpreter enabled
[ 0.152828] ACPI: (supports S0)
[ 0.152830] ACPI: Using IOAPIC for interrupt routing
[ 0.152883] PCI: Using host bridge windows from ACPI; if necessary, use "pci=nocrs" and report a bug
[ 0.156479] ACPI Error: Cannot acquire Mutex for method [SNVC], current SyncLevel is too large (1) (20140214/dsmethod-362)
[ 0.156485] ACPI Error: Method parse/execution failed [\SMBF] (Node ffff88012d026ec0), AE_AML_MUTEX_ORDER (20140214/psparse-536)
[ 0.156494] ACPI Error: Method parse/execution failed [\GENS] (Node ffff88012d026e70), AE_AML_MUTEX_ORDER (20140214/psparse-536)
[ 0.156504] ACPI Error: Method parse/execution failed [\_SB_.PCI0.LPCB.UAR1._STA] (Node ffff88012d02fb28), AE_AML_MUTEX_ORDER (20140214/psparse-536)
[ 0.156666] ACPI Error: Cannot acquire Mutex for method [SNVC], current SyncLevel is too large (1) (20140214/dsmethod-362)
[ 0.156671] ACPI Error: Method parse/execution failed [\SMBF] (Node ffff88012d026ec0), AE_AML_MUTEX_ORDER (20140214/psparse-536)
[ 0.156680] ACPI Error: Method parse/execution failed [\GENS] (Node ffff88012d026e70), AE_AML_MUTEX_ORDER (20140214/psparse-536)
[ 0.156689] ACPI Error: Method parse/execution failed [\_SB_.PCI0.LPCB.LPTE.CLPS] (Node ffff88012d02fcb8), AE_AML_MUTEX_ORDER (20140214/psparse-536)
[ 0.156702] ACPI Error: Method parse/execution failed [\_SB_.PCI0.LPCB.LPTE._STA] (Node ffff88012d02fce0), AE_AML_MUTEX_ORDER (20140214/psparse-536)
[ 0.162229] ACPI Error: Cannot acquire Mutex for method [SNVC], current SyncLevel is too large (1) (20140214/dsmethod-362)
[ 0.162234] ACPI Error: Method parse/execution failed [\SMBF] (Node ffff88012d026ec0), AE_AML_MUTEX_ORDER (20140214/psparse-536)
[ 0.162244] ACPI Error: Method parse/execution failed [\GENS] (Node ffff88012d026e70), AE_AML_MUTEX_ORDER (20140214/psparse-536)
[ 0.162254] ACPI Error: Method parse/execution failed [\EISC] (Node ffff88012d02d560), AE_AML_MUTEX_ORDER (20140214/psparse-536)

(you get the idea. I get a total of 172 'ACPI Error:' messages before I get to
a single-user prompt)

shouldn't be there regardless.

I'm going to look at this issue later today.

Rafael

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/