Skip to content
Snippets Groups Projects
  1. Sep 30, 2020
    • Marc-André Lureau's avatar
      meson: fix MSI rule · 18240fdc
      Marc-André Lureau authored
      The environment variables can't be passed through an env: argument
      yet (meson#2723), use 'env' as suggested in:
      https://github.com/mesonbuild/meson/issues/2723#issuecomment-348630957
      
      
      
      Signed-off-by: default avatarMarc-André Lureau <marcandre.lureau@redhat.com>
      Signed-off-by: default avatarPaolo Bonzini <pbonzini@redhat.com>
      18240fdc
    • Paolo Bonzini's avatar
      ninjatool: rebuild multi-output targets if outputs are missing · 1d14a8ed
      Paolo Bonzini authored
      
      The "stamp file trick" used to group targets of a single multi-output rule
      prevents the user from deleting one such target in order to force its
      rebuild.  Doing so will not touch the stamp file, and therefore only
      the dummy ":" command will be executed.
      
      With this patch, ninjatool writes rules that force-rebuild the stamp
      file if any of its outputs are missing.  Rebuilding the missing
      target therefore causes the stamp file to be rebuilt too.
      
      Reported-by: default avatarMarkus Armbruster <armbru@redhat.com>
      Signed-off-by: default avatarPaolo Bonzini <pbonzini@redhat.com>
      1d14a8ed
    • Paolo Bonzini's avatar
      meson: clean up build_by_default · 27d551c0
      Paolo Bonzini authored
      
      Build all executables by default except for the known-broken ones.
      
      This also allows running qemu-iotests without manually building
      socket_scm_helper.
      
      Reported-by: default avatarMax Reitz <mreitz@redhat.com>
      Tested-by: default avatarMax Reitz <mreitz@redhat.com>
      Signed-off-by: default avatarPaolo Bonzini <pbonzini@redhat.com>
      27d551c0
    • Claudio Fontana's avatar
      tests: add missing genh dependency · 8a5701e5
      Claudio Fontana authored
      
      Fix high-parallelism builds by forcing all generated headers
      to be created before tests are compiled.
      
      Reported-by: default avatarClaudio Fontana <cfontana@suse.de>
      Signed-off-by: default avatarPaolo Bonzini <pbonzini@redhat.com>
      Tested-by: default avatarClaudio Fontana <cfontana@suse.de>
      Reviewed-by: default avatarPhilippe Mathieu-Daudé <philmd@redhat.com>
      8a5701e5
    • Peter Maydell's avatar
      Merge remote-tracking branch 'remotes/mst/tags/for_upstream' into staging · cbba3dc6
      Peter Maydell authored
      
      acpi: unit test
      
      This just adds a unit test for previously merged functionality.
      A bit unusual, but we have a contribitor under a deadline,
      let's be nice and merge the unit test right away - does no harm.
      Hopefully this won't be a beginning of a trend ...
      
      Signed-off-by: default avatarMichael S. Tsirkin <mst@redhat.com>
      
      # gpg: Signature made Wed 30 Sep 2020 09:13:13 BST
      # gpg:                using RSA key 5D09FD0871C8F85B94CA8A0D281F0DB8D28D5469
      # gpg:                issuer "mst@redhat.com"
      # gpg: Good signature from "Michael S. Tsirkin <mst@kernel.org>" [full]
      # gpg:                 aka "Michael S. Tsirkin <mst@redhat.com>" [full]
      # Primary key fingerprint: 0270 606B 6F3C DF3D 0B17  0970 C350 3912 AFBE 8E67
      #      Subkey fingerprint: 5D09 FD08 71C8 F85B 94CA  8A0D 281F 0DB8 D28D 5469
      
      * remotes/mst/tags/for_upstream:
        tests/acpi: add DSDT.hpbrroot DSDT table blob to test global i440fx hotplug
        tests/acpi: unit test exercising global pci hotplug off for i440fx
      
      Signed-off-by: default avatarPeter Maydell <peter.maydell@linaro.org>
      cbba3dc6
    • Ani Sinha's avatar
      tests/acpi: add DSDT.hpbrroot DSDT table blob to test global i440fx hotplug · 42803552
      Ani Sinha authored
      
      This change adds a new DSDT golden master table blob to test disabling
      hotplug on both pci root bus and pci bridges. Also reverts the change
      in file bios-tables-test-allowed-diff.h to make sure its now empty so that
      future modifications to acpi tables can be caught.
      
      The following is the disassembled diff between DSDT.hpbridge and DSDT.hpbrroot:
      
      @@ -5,13 +5,13 @@
        *
        * Disassembling to symbolic ASL+ operators
        *
      - * Disassembly of tests/data/acpi/pc/DSDT.hpbridge, Tue Sep 29 17:51:04 2020
      + * Disassembly of tests/data/acpi/pc/DSDT.hpbrroot, Tue Sep 29 17:50:00 2020
        *
        * Original Table Header:
        *     Signature        "DSDT"
      - *     Length           0x0000139D (5021)
      + *     Length           0x00000C07 (3079)
        *     Revision         0x01 **** 32-bit table (V1), no 64-bit math support
      - *     Checksum         0x05
      + *     Checksum         0xAD
        *     OEM ID           "BOCHS "
        *     OEM Table ID     "BXPCDSDT"
        *     OEM Revision     0x00000001 (1)
      @@ -247,38 +247,6 @@
               }
           }
      
      -    Scope (_SB.PCI0)
      -    {
      -        OperationRegion (PCST, SystemIO, 0xAE00, 0x08)
      -        Field (PCST, DWordAcc, NoLock, WriteAsZeros)
      -        {
      -            PCIU,   32,
      -            PCID,   32
      -        }
      -
      -        OperationRegion (SEJ, SystemIO, 0xAE08, 0x04)
      -        Field (SEJ, DWordAcc, NoLock, WriteAsZeros)
      -        {
      -            B0EJ,   32
      -        }
      -
      -        OperationRegion (BNMR, SystemIO, 0xAE10, 0x04)
      -        Field (BNMR, DWordAcc, NoLock, WriteAsZeros)
      -        {
      -            BNUM,   32
      -        }
      -
      -        Mutex (BLCK, 0x00)
      -        Method (PCEJ, 2, NotSerialized)
      -        {
      -            Acquire (BLCK, 0xFFFF)
      -            BNUM = Arg0
      -            B0EJ = (One << Arg1)
      -            Release (BLCK)
      -            Return (Zero)
      -        }
      -    }
      -
           Scope (_SB)
           {
               Scope (PCI0)
      @@ -737,12 +705,6 @@
           Scope (_GPE)
           {
               Name (_HID, "ACPI0006" /* GPE Block Device */)  // _HID: Hardware ID
      -        Method (_E01, 0, NotSerialized)  // _Exx: Edge-Triggered GPE
      -        {
      -            Acquire (\_SB.PCI0.BLCK, 0xFFFF)
      -            \_SB.PCI0.PCNT ()
      -            Release (\_SB.PCI0.BLCK)
      -        }
           }
      
           Scope (\_SB.PCI0)
      @@ -813,22 +775,6 @@
                           )
                   })
               }
      -
      -        Device (PHPR)
      -        {
      -            Name (_HID, "PNP0A06" /* Generic Container Device */)  // _HID: Hardware ID
      -            Name (_UID, "PCI Hotplug resources")  // _UID: Unique ID
      -            Name (_STA, 0x0B)  // _STA: Status
      -            Name (_CRS, ResourceTemplate ()  // _CRS: Current Resource Settings
      -            {
      -                IO (Decode16,
      -                    0xAE00,             // Range Minimum
      -                    0xAE00,             // Range Maximum
      -                    0x01,               // Alignment
      -                    0x14,               // Length
      -                    )
      -            })
      -        }
           }
      
           Scope (\)
      @@ -878,7 +824,6 @@
           {
               Scope (PCI0)
               {
      -            Name (BSEL, Zero)
                   Device (S00)
                   {
                       Name (_ADR, Zero)  // _ADR: Address
      @@ -907,436 +852,6 @@
                   {
                       Name (_ADR, 0x00030000)  // _ADR: Address
                   }
      -
      -            Device (S20)
      -            {
      -                Name (_SUN, 0x04)  // _SUN: Slot User Number
      -                Name (_ADR, 0x00040000)  // _ADR: Address
      -                Method (_EJ0, 1, NotSerialized)  // _EJx: Eject Device
      -                {
      -                    PCEJ (BSEL, _SUN)
      -                }
      -            }
      -
      -            Device (S28)
      -            {
      -                Name (_SUN, 0x05)  // _SUN: Slot User Number
      -                Name (_ADR, 0x00050000)  // _ADR: Address
      -                Method (_EJ0, 1, NotSerialized)  // _EJx: Eject Device
      -                {
      -                    PCEJ (BSEL, _SUN)
      -                }
      -            }
      -
      -            Device (S30)
      -            {
      -                Name (_SUN, 0x06)  // _SUN: Slot User Number
      -                Name (_ADR, 0x00060000)  // _ADR: Address
      -                Method (_EJ0, 1, NotSerialized)  // _EJx: Eject Device
      -                {
      -                    PCEJ (BSEL, _SUN)
      -                }
      -            }
      -
      -            Device (S38)
      -            {
      -                Name (_SUN, 0x07)  // _SUN: Slot User Number
      -                Name (_ADR, 0x00070000)  // _ADR: Address
      -                Method (_EJ0, 1, NotSerialized)  // _EJx: Eject Device
      -                {
      -                    PCEJ (BSEL, _SUN)
      -                }
      -            }
      -
      -            Device (S40)
      -            {
      -                Name (_SUN, 0x08)  // _SUN: Slot User Number
      -                Name (_ADR, 0x00080000)  // _ADR: Address
      -                Method (_EJ0, 1, NotSerialized)  // _EJx: Eject Device
      -                {
      -                    PCEJ (BSEL, _SUN)
      -                }
      -            }
      -
      -            Device (S48)
      -            {
      -                Name (_SUN, 0x09)  // _SUN: Slot User Number
      -                Name (_ADR, 0x00090000)  // _ADR: Address
      -                Method (_EJ0, 1, NotSerialized)  // _EJx: Eject Device
      -                {
      -                    PCEJ (BSEL, _SUN)
      -                }
      -            }
      -
      -            Device (S50)
      -            {
      -                Name (_SUN, 0x0A)  // _SUN: Slot User Number
      -                Name (_ADR, 0x000A0000)  // _ADR: Address
      -                Method (_EJ0, 1, NotSerialized)  // _EJx: Eject Device
      -                {
      -                    PCEJ (BSEL, _SUN)
      -                }
      -            }
      -
      -            Device (S58)
      -            {
      -                Name (_SUN, 0x0B)  // _SUN: Slot User Number
      -                Name (_ADR, 0x000B0000)  // _ADR: Address
      -                Method (_EJ0, 1, NotSerialized)  // _EJx: Eject Device
      -                {
      -                    PCEJ (BSEL, _SUN)
      -                }
      -            }
      -
      -            Device (S60)
      -            {
      -                Name (_SUN, 0x0C)  // _SUN: Slot User Number
      -                Name (_ADR, 0x000C0000)  // _ADR: Address
      -                Method (_EJ0, 1, NotSerialized)  // _EJx: Eject Device
      -                {
      -                    PCEJ (BSEL, _SUN)
      -                }
      -            }
      -
      -            Device (S68)
      -            {
      -                Name (_SUN, 0x0D)  // _SUN: Slot User Number
      -                Name (_ADR, 0x000D0000)  // _ADR: Address
      -                Method (_EJ0, 1, NotSerialized)  // _EJx: Eject Device
      -                {
      -                    PCEJ (BSEL, _SUN)
      -                }
      -            }
      -
      -            Device (S70)
      -            {
      -                Name (_SUN, 0x0E)  // _SUN: Slot User Number
      -                Name (_ADR, 0x000E0000)  // _ADR: Address
      -                Method (_EJ0, 1, NotSerialized)  // _EJx: Eject Device
      -                {
      -                    PCEJ (BSEL, _SUN)
      -                }
      -            }
      -
      -            Device (S78)
      -            {
      -                Name (_SUN, 0x0F)  // _SUN: Slot User Number
      -                Name (_ADR, 0x000F0000)  // _ADR: Address
      -                Method (_EJ0, 1, NotSerialized)  // _EJx: Eject Device
      -                {
      -                    PCEJ (BSEL, _SUN)
      -                }
      -            }
      -
      -            Device (S80)
      -            {
      -                Name (_SUN, 0x10)  // _SUN: Slot User Number
      -                Name (_ADR, 0x00100000)  // _ADR: Address
      -                Method (_EJ0, 1, NotSerialized)  // _EJx: Eject Device
      -                {
      -                    PCEJ (BSEL, _SUN)
      -                }
      -            }
      -
      -            Device (S88)
      -            {
      -                Name (_SUN, 0x11)  // _SUN: Slot User Number
      -                Name (_ADR, 0x00110000)  // _ADR: Address
      -                Method (_EJ0, 1, NotSerialized)  // _EJx: Eject Device
      -                {
      -                    PCEJ (BSEL, _SUN)
      -                }
      -            }
      -
      -            Device (S90)
      -            {
      -                Name (_SUN, 0x12)  // _SUN: Slot User Number
      -                Name (_ADR, 0x00120000)  // _ADR: Address
      -                Method (_EJ0, 1, NotSerialized)  // _EJx: Eject Device
      -                {
      -                    PCEJ (BSEL, _SUN)
      -                }
      -            }
      -
      -            Device (S98)
      -            {
      -                Name (_SUN, 0x13)  // _SUN: Slot User Number
      -                Name (_ADR, 0x00130000)  // _ADR: Address
      -                Method (_EJ0, 1, NotSerialized)  // _EJx: Eject Device
      -                {
      -                    PCEJ (BSEL, _SUN)
      -                }
      -            }
      -
      -            Device (SA0)
      -            {
      -                Name (_SUN, 0x14)  // _SUN: Slot User Number
      -                Name (_ADR, 0x00140000)  // _ADR: Address
      -                Method (_EJ0, 1, NotSerialized)  // _EJx: Eject Device
      -                {
      -                    PCEJ (BSEL, _SUN)
      -                }
      -            }
      -
      -            Device (SA8)
      -            {
      -                Name (_SUN, 0x15)  // _SUN: Slot User Number
      -                Name (_ADR, 0x00150000)  // _ADR: Address
      -                Method (_EJ0, 1, NotSerialized)  // _EJx: Eject Device
      -                {
      -                    PCEJ (BSEL, _SUN)
      -                }
      -            }
      -
      -            Device (SB0)
      -            {
      -                Name (_SUN, 0x16)  // _SUN: Slot User Number
      -                Name (_ADR, 0x00160000)  // _ADR: Address
      -                Method (_EJ0, 1, NotSerialized)  // _EJx: Eject Device
      -                {
      -                    PCEJ (BSEL, _SUN)
      -                }
      -            }
      -
      -            Device (SB8)
      -            {
      -                Name (_SUN, 0x17)  // _SUN: Slot User Number
      -                Name (_ADR, 0x00170000)  // _ADR: Address
      -                Method (_EJ0, 1, NotSerialized)  // _EJx: Eject Device
      -                {
      -                    PCEJ (BSEL, _SUN)
      -                }
      -            }
      -
      -            Device (SC0)
      -            {
      -                Name (_SUN, 0x18)  // _SUN: Slot User Number
      -                Name (_ADR, 0x00180000)  // _ADR: Address
      -                Method (_EJ0, 1, NotSerialized)  // _EJx: Eject Device
      -                {
      -                    PCEJ (BSEL, _SUN)
      -                }
      -            }
      -
      -            Device (SC8)
      -            {
      -                Name (_SUN, 0x19)  // _SUN: Slot User Number
      -                Name (_ADR, 0x00190000)  // _ADR: Address
      -                Method (_EJ0, 1, NotSerialized)  // _EJx: Eject Device
      -                {
      -                    PCEJ (BSEL, _SUN)
      -                }
      -            }
      -
      -            Device (SD0)
      -            {
      -                Name (_SUN, 0x1A)  // _SUN: Slot User Number
      -                Name (_ADR, 0x001A0000)  // _ADR: Address
      -                Method (_EJ0, 1, NotSerialized)  // _EJx: Eject Device
      -                {
      -                    PCEJ (BSEL, _SUN)
      -                }
      -            }
      -
      -            Device (SD8)
      -            {
      -                Name (_SUN, 0x1B)  // _SUN: Slot User Number
      -                Name (_ADR, 0x001B0000)  // _ADR: Address
      -                Method (_EJ0, 1, NotSerialized)  // _EJx: Eject Device
      -                {
      -                    PCEJ (BSEL, _SUN)
      -                }
      -            }
      -
      -            Device (SE0)
      -            {
      -                Name (_SUN, 0x1C)  // _SUN: Slot User Number
      -                Name (_ADR, 0x001C0000)  // _ADR: Address
      -                Method (_EJ0, 1, NotSerialized)  // _EJx: Eject Device
      -                {
      -                    PCEJ (BSEL, _SUN)
      -                }
      -            }
      -
      -            Device (SE8)
      -            {
      -                Name (_SUN, 0x1D)  // _SUN: Slot User Number
      -                Name (_ADR, 0x001D0000)  // _ADR: Address
      -                Method (_EJ0, 1, NotSerialized)  // _EJx: Eject Device
      -                {
      -                    PCEJ (BSEL, _SUN)
      -                }
      -            }
      -
      -            Device (SF0)
      -            {
      -                Name (_SUN, 0x1E)  // _SUN: Slot User Number
      -                Name (_ADR, 0x001E0000)  // _ADR: Address
      -                Method (_EJ0, 1, NotSerialized)  // _EJx: Eject Device
      -                {
      -                    PCEJ (BSEL, _SUN)
      -                }
      -            }
      -
      -            Device (SF8)
      -            {
      -                Name (_SUN, 0x1F)  // _SUN: Slot User Number
      -                Name (_ADR, 0x001F0000)  // _ADR: Address
      -                Method (_EJ0, 1, NotSerialized)  // _EJx: Eject Device
      -                {
      -                    PCEJ (BSEL, _SUN)
      -                }
      -            }
      -
      -            Method (DVNT, 2, NotSerialized)
      -            {
      -                If ((Arg0 & 0x10))
      -                {
      -                    Notify (S20, Arg1)
      -                }
      -
      -                If ((Arg0 & 0x20))
      -                {
      -                    Notify (S28, Arg1)
      -                }
      -
      -                If ((Arg0 & 0x40))
      -                {
      -                    Notify (S30, Arg1)
      -                }
      -
      -                If ((Arg0 & 0x80))
      -                {
      -                    Notify (S38, Arg1)
      -                }
      -
      -                If ((Arg0 & 0x0100))
      -                {
      -                    Notify (S40, Arg1)
      -                }
      -
      -                If ((Arg0 & 0x0200))
      -                {
      -                    Notify (S48, Arg1)
      -                }
      -
      -                If ((Arg0 & 0x0400))
      -                {
      -                    Notify (S50, Arg1)
      -                }
      -
      -                If ((Arg0 & 0x0800))
      -                {
      -                    Notify (S58, Arg1)
      -                }
      -
      -                If ((Arg0 & 0x1000))
      -                {
      -                    Notify (S60, Arg1)
      -                }
      -
      -                If ((Arg0 & 0x2000))
      -                {
      -                    Notify (S68, Arg1)
      -                }
      -
      -                If ((Arg0 & 0x4000))
      -                {
      -                    Notify (S70, Arg1)
      -                }
      -
      -                If ((Arg0 & 0x8000))
      -                {
      -                    Notify (S78, Arg1)
      -                }
      -
      -                If ((Arg0 & 0x00010000))
      -                {
      -                    Notify (S80, Arg1)
      -                }
      -
      -                If ((Arg0 & 0x00020000))
      -                {
      -                    Notify (S88, Arg1)
      -                }
      -
      -                If ((Arg0 & 0x00040000))
      -                {
      -                    Notify (S90, Arg1)
      -                }
      -
      -                If ((Arg0 & 0x00080000))
      -                {
      -                    Notify (S98, Arg1)
      -                }
      -
      -                If ((Arg0 & 0x00100000))
      -                {
      -                    Notify (SA0, Arg1)
      -                }
      -
      -                If ((Arg0 & 0x00200000))
      -                {
      -                    Notify (SA8, Arg1)
      -                }
      -
      -                If ((Arg0 & 0x00400000))
      -                {
      -                    Notify (SB0, Arg1)
      -                }
      -
      -                If ((Arg0 & 0x00800000))
      -                {
      -                    Notify (SB8, Arg1)
      -                }
      -
      -                If ((Arg0 & 0x01000000))
      -                {
      -                    Notify (SC0, Arg1)
      -                }
      -
      -                If ((Arg0 & 0x02000000))
      -                {
      -                    Notify (SC8, Arg1)
      -                }
      -
      -                If ((Arg0 & 0x04000000))
      -                {
      -                    Notify (SD0, Arg1)
      -                }
      -
      -                If ((Arg0 & 0x08000000))
      -                {
      -                    Notify (SD8, Arg1)
      -                }
      -
      -                If ((Arg0 & 0x10000000))
      -                {
      -                    Notify (SE0, Arg1)
      -                }
      -
      -                If ((Arg0 & 0x20000000))
      -                {
      -                    Notify (SE8, Arg1)
      -                }
      -
      -                If ((Arg0 & 0x40000000))
      -                {
      -                    Notify (SF0, Arg1)
      -                }
      -
      -                If ((Arg0 & 0x80000000))
      -                {
      -                    Notify (SF8, Arg1)
      -                }
      -            }
      -
      -            Method (PCNT, 0, NotSerialized)
      -            {
      -                BNUM = Zero
      -                DVNT (PCIU, One)
      -                DVNT (PCID, 0x03)
      -            }
               }
           }
       }
      
      Signed-off-by: default avatarAni Sinha <ani@anisinha.ca>
      Acked-by: default avatarIgor Mammedov <imammedo@redhat.com>
      Message-Id: <20200929123011.31836-3-ani@anisinha.ca>
      Reviewed-by: default avatarMichael S. Tsirkin <mst@redhat.com>
      Signed-off-by: default avatarMichael S. Tsirkin <mst@redhat.com>
      42803552
    • Ani Sinha's avatar
      tests/acpi: unit test exercising global pci hotplug off for i440fx · 5645f996
      Ani Sinha authored
      
      This change adds a unit test to exercise the case when hotplug is disabled
      both for pci root bus and the pci bridges by passing the following two
      switches to qemu:
      
        -global PIIX4_PM.acpi-root-pci-hotplug=off
        -global PIIX4_PM.acpi-pci-hotplug-with-bridge-support=off
      
      bios-tables-test-allowed-diff.h documents the fact that a new DSDT acpi gold
      master binary blob we need to be added to test this. We will do the actual
      addition in the next patch in the series.
      
      Signed-off-by: default avatarAni Sinha <ani@anisinha.ca>
      Reviewed-by: default avatarIgor Mammedov <imammedo@redhat.com>
      Message-Id: <20200929123011.31836-2-ani@anisinha.ca>
      Reviewed-by: default avatarMichael S. Tsirkin <mst@redhat.com>
      Signed-off-by: default avatarMichael S. Tsirkin <mst@redhat.com>
      5645f996
  2. Sep 29, 2020
Loading