Reviewed-by: Jordan Justen <jordan.l.jus...@intel.com>

On 2015-08-28 02:16:29, Laszlo Ersek wrote:
> Bruce Cran reported the following issue:
> 
>   With iasl version 20150410-64 building OvmfX64 (using OvmfPkg/build.sh
>   -a X64 -t GCC49 -b RELEASE) results in a couple of warnings about
>   methods that should be serialized:
> 
>   .../OvmfPkg/AcpiTables/AcpiTables/OUTPUT/./Dsdt.iiii
>   95:       Method (_CRS, 0) {
>   Remark   2120 - Control Method should be made Serialized ^  (due to
>   creation of named objects within)
> 
>   .../OvmfPkg/AcpiTables/AcpiTables/OUTPUT/./Dsdt.iiii
>   235:         Method (PCRS, 1, NotSerialized) {
>   Remark   2120 - Control Method should be made Serialized ^  (due to
>   creation of named objects within)
> 
> The ACPI 6.0 spec justifies the above warnings in "19.6.82 Method (Declare
> Control Method)":
> 
>   [...] The serialize rule can be used to prevent reentering of a method.
>   This is especially useful if the method creates namespace objects.
>   Without the serialize rule, the reentering of a method will fail when it
>   attempts to create the same namespace object. [...]
> 
> Cc: Bruce Cran <br...@cran.org.uk>
> Reported-by: Bruce Cran <br...@cran.org.uk>
> Contributed-under: TianoCore Contribution Agreement 1.0
> Signed-off-by: Laszlo Ersek <ler...@redhat.com>
> ---
>  OvmfPkg/AcpiTables/Dsdt.asl | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/OvmfPkg/AcpiTables/Dsdt.asl b/OvmfPkg/AcpiTables/Dsdt.asl
> index 519a312..2c3a314 100644
> --- a/OvmfPkg/AcpiTables/Dsdt.asl
> +++ b/OvmfPkg/AcpiTables/Dsdt.asl
> @@ -130,7 +130,7 @@ DefinitionBlock ("Dsdt.aml", "DSDT", 1, "INTEL ", "OVMF   
>  ", 4) {
>              )
>        })
>  
> -      Method (_CRS, 0) {
> +      Method (_CRS, 0, Serialized) {
>          //
>          // see the FIRMWARE_DATA structure in 
> "OvmfPkg/AcpiPlatformDxe/Qemu.c"
>          //
> @@ -360,7 +360,7 @@ DefinitionBlock ("Dsdt.aml", "DSDT", 1, "INTEL ", "OVMF   
>  ", 4) {
>          // _CRS method for LNKA, LNKB, LNKC, LNKD
>          // Arg0[in]: value of PIRA / PIRB / PIRC / PIRD
>          //
> -        Method (PCRS, 1, NotSerialized) {
> +        Method (PCRS, 1, Serialized) {
>            //
>            // create temporary buffer with an Extended Interrupt Descriptor
>            // whose single vector defaults to zero
> -- 
> 1.8.3.1
> 
> _______________________________________________
> edk2-devel mailing list
> edk2-devel@lists.01.org
> https://lists.01.org/mailman/listinfo/edk2-devel
_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel

Reply via email to