Date: Thu, 3 Oct 2013 11:30:52 +0200
The ASL Optimizing Compiler version 20130823-32 [Sep 11 2013] issues the following warning.
$ make […] Compiling IASL out/src/fw/acpi-dsdt.hex out/src/fw/acpi-dsdt.dsl.i 360: Method(IQCR, 1, NotSerialized) { Remark 2120 - ^ Control Method should be made Serialized (due to creation of named objects within) […] ASL Input: out/src/fw/acpi-dsdt.dsl.i - 475 lines, 19181 bytes, 316 keywords AML Output: out/src/fw/acpi-dsdt.aml - 4407 bytes, 159 named objects, 157 executable opcodes Listing File: out/src/fw/acpi-dsdt.lst - 143715 bytes Hex Dump: out/src/fw/acpi-dsdt.hex - 41661 bytes
Compilation complete. 0 Errors, 0 Warnings, 1 Remarks, 246 Optimizations […]
After changing the parameter from `NotSerialized` to `Serialized`, the remark is indeed gone and there is no size change.
The remark was added in ACPICA version 20130517 [1] and gives the following explanation.
If a thread blocks within the method for any reason, and another thread enters the method, the method will fail because an attempt will be made to create the same (named) object twice.
In this case, issue a remark that the method should be marked serialized. ACPICA BZ 909.
[1] https://github.com/acpica/acpica/commit/ba84d0fc18ba910a47a3f71c68a43543c06e...
Signed-off-by: Paul Menzel paulepanter@users.sourceforge.net --- src/fw/acpi-dsdt.dsl | 2 +- src/fw/q35-acpi-dsdt.dsl | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/src/fw/acpi-dsdt.dsl b/src/fw/acpi-dsdt.dsl index 158f6b4..56243c3 100644 --- a/src/fw/acpi-dsdt.dsl +++ b/src/fw/acpi-dsdt.dsl @@ -235,7 +235,7 @@ DefinitionBlock ( } Return (0x0B) } - Method(IQCR, 1, NotSerialized) { + Method(IQCR, 1, Serialized) { // _CRS method - get current settings Name(PRR0, ResourceTemplate() { Interrupt(, Level, ActiveHigh, Shared) { 0 } diff --git a/src/fw/q35-acpi-dsdt.dsl b/src/fw/q35-acpi-dsdt.dsl index c031d83..5dec541 100644 --- a/src/fw/q35-acpi-dsdt.dsl +++ b/src/fw/q35-acpi-dsdt.dsl @@ -331,7 +331,7 @@ DefinitionBlock ( } Return (0x0B) } - Method(IQCR, 1, NotSerialized) { + Method(IQCR, 1, Serialized) { // _CRS method - get current settings Name(PRR0, ResourceTemplate() { Interrupt(, Level, ActiveHigh, Shared) { 0 }
On Thu, Oct 03, 2013 at 11:49:59AM +0200, Paul Menzel wrote:
Date: Thu, 3 Oct 2013 11:30:52 +0200
The ASL Optimizing Compiler version 20130823-32 [Sep 11 2013] issues the following warning.
Thanks. I applied this change.
-Kevin