All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v1 0/3] unit tests for change 'do not add hotplug related amls for cold plugged bridges'
@ 2020-09-05 10:35 Ani Sinha
  2020-09-05 10:35 ` [PATCH v1 1/3] tests/acpi: list added acpi table binary file for pci bridge hotplug test Ani Sinha
                   ` (4 more replies)
  0 siblings, 5 replies; 14+ messages in thread
From: Ani Sinha @ 2020-09-05 10:35 UTC (permalink / raw)
  To: qemu-devel; +Cc: Ani Sinha, Igor Mammedov, jusual, Michael S. Tsirkin

The following patchset adds the unit test for the change:
f80ba9e599 ("tests/acpi: unit test for 'acpi-pci-hotplug-with-bridge-support' bridge flag")

Please compare the diff of the DSDT table attached with the commit log with the following diff which
was generated before appplying the above change. The major difference between the diffs are the absence
of the following lines in the diff corresponding to this change:

+                Name (_SUN, 0x03)  // _SUN: Slot User Number
+                Method (_EJ0, 1, NotSerialized)  // _EJx: Eject Device
                 {
+                    PCEJ (BSEL, _SUN)

+                If ((Arg0 & 0x08))
+                {
+                    Notify (S18, Arg1)
+                }
+

These are hotplug related amls which were present for slot 3 in the root pci bus before this change was applied.
With the change, these amls have been removed. Hence, slot 3 where the bridge is attached is no longer hotplug
capable.

--Ani

@@ -1,30 +1,30 @@
 /*
  * Intel ACPI Component Architecture
  * AML/ASL+ Disassembler version 20180105 (64-bit version)
  * Copyright (c) 2000 - 2018 Intel Corporation
  * 
  * Disassembling to symbolic ASL+ operators
  *
- * Disassembly of tests/data/acpi/pc/DSDT.bridge, Fri Sep  4 11:08:58 2020
+ * Disassembly of /tmp/aml-IEQEQ0, Fri Sep  4 11:08:58 2020
  *
  * Original Table Header:
  *     Signature        "DSDT"
- *     Length           0x00001A89 (6793)
+ *     Length           0x00001346 (4934)
  *     Revision         0x01 **** 32-bit table (V1), no 64-bit math support
- *     Checksum         0x08
+ *     Checksum         0xBF
  *     OEM ID           "BOCHS "
  *     OEM Table ID     "BXPCDSDT"
  *     OEM Revision     0x00000001 (1)
  *     Compiler ID      "BXPC"
  *     Compiler Version 0x00000001 (1)
  */
 DefinitionBlock ("", "DSDT", 1, "BOCHS ", "BXPCDSDT", 0x00000001)
 {
     Scope (\)
     {
         OperationRegion (DBG, SystemIO, 0x0402, One)
         Field (DBG, ByteAcc, NoLock, Preserve)
         {
             DBGB,   8
         }
 
@@ -859,521 +859,36 @@
                 }
 
                 Method (_S2D, 0, NotSerialized)  // _S2D: S2 Device State
                 {
                     Return (Zero)
                 }
 
                 Method (_S3D, 0, NotSerialized)  // _S3D: S3 Device State
                 {
                     Return (Zero)
                 }
             }
 
             Device (S18)
             {
                 Name (_ADR, 0x00030000)  // _ADR: Address
-                Name (BSEL, One)
-                Device (S00)
-                {
-                    Name (_SUN, Zero)  // _SUN: Slot User Number
-                    Name (_ADR, Zero)  // _ADR: Address
-                    Method (_EJ0, 1, NotSerialized)  // _EJx: Eject Device
-                    {
-                        PCEJ (BSEL, _SUN)
-                    }
-                }
-
-                Device (S08)
-                {
-                    Name (_SUN, One)  // _SUN: Slot User Number
-                    Name (_ADR, 0x00010000)  // _ADR: Address
-                    Method (_EJ0, 1, NotSerialized)  // _EJx: Eject Device
-                    {
-                        PCEJ (BSEL, _SUN)
-                    }
-                }
-
-                Device (S10)
-                {
-                    Name (_SUN, 0x02)  // _SUN: Slot User Number
-                    Name (_ADR, 0x00020000)  // _ADR: Address
-                    Method (_EJ0, 1, NotSerialized)  // _EJx: Eject Device
-                    {
-                        PCEJ (BSEL, _SUN)
-                    }
-                }
-
-                Device (S18)
-                {
-                    Name (_SUN, 0x03)  // _SUN: Slot User Number
-                    Name (_ADR, 0x00030000)  // _ADR: Address
-                    Method (_EJ0, 1, NotSerialized)  // _EJx: Eject Device
-                    {
-                        PCEJ (BSEL, _SUN)
-                    }
-                }
-
-                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 & One))
-                    {
-                        Notify (S00, Arg1)
-                    }
-
-                    If ((Arg0 & 0x02))
-                    {
-                        Notify (S08, Arg1)
-                    }
-
-                    If ((Arg0 & 0x04))
-                    {
-                        Notify (S10, Arg1)
-                    }
-
-                    If ((Arg0 & 0x08))
-                    {
-                        Notify (S18, Arg1)
-                    }
-
-                    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)
+                Name (_SUN, 0x03)  // _SUN: Slot User Number
+                Method (_EJ0, 1, NotSerialized)  // _EJx: Eject Device
                 {
-                    BNUM = One
-                    DVNT (PCIU, One)
-                    DVNT (PCID, 0x03)
+                    PCEJ (BSEL, _SUN)
                 }
             }
 
             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
@@ -1633,32 +1148,37 @@
                     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 & 0x08))
+                {
+                    Notify (S18, Arg1)
+                }
+
                 If ((Arg0 & 0x10))
                 {
                     Notify (S20, Arg1)
                 }
 
                 If ((Arg0 & 0x20))
                 {
                     Notify (S28, Arg1)
                 }
 
                 If ((Arg0 & 0x40))
                 {
                     Notify (S30, Arg1)
                 }
 
                 If ((Arg0 & 0x80))
@@ -1779,22 +1299,21 @@
                 If ((Arg0 & 0x40000000))
                 {
                     Notify (SF0, Arg1)
                 }
 
                 If ((Arg0 & 0x80000000))
                 {
                     Notify (SF8, Arg1)
                 }
             }
 
             Method (PCNT, 0, NotSerialized)
             {
                 BNUM = Zero
                 DVNT (PCIU, One)
                 DVNT (PCID, 0x03)
-                ^S18.PCNT ()
             }
         }
     }
 }
 

***

Ani Sinha (3):
  tests/acpi: list added acpi table binary file for pci bridge hotplug
    test
  tests/acpi: unit test for 'acpi-pci-hotplug-with-bridge-support'
    bridge flag
  tests/acpi: add newly added acpi DSDT table blob for pci bridge
    hotplug flag

 tests/data/acpi/pc/DSDT.hpbridge | Bin 0 -> 4895 bytes
 tests/qtest/bios-tables-test.c   |  15 +++++++++++++++
 2 files changed, 15 insertions(+)
 create mode 100644 tests/data/acpi/pc/DSDT.hpbridge

-- 
2.17.1



^ permalink raw reply	[flat|nested] 14+ messages in thread

* [PATCH v1 1/3] tests/acpi: list added acpi table binary file for pci bridge hotplug test
  2020-09-05 10:35 [PATCH v1 0/3] unit tests for change 'do not add hotplug related amls for cold plugged bridges' Ani Sinha
@ 2020-09-05 10:35 ` Ani Sinha
  2020-09-05 10:35 ` [PATCH v1 2/3] tests/acpi: unit test for 'acpi-pci-hotplug-with-bridge-support' bridge flag Ani Sinha
                   ` (3 subsequent siblings)
  4 siblings, 0 replies; 14+ messages in thread
From: Ani Sinha @ 2020-09-05 10:35 UTC (permalink / raw)
  To: qemu-devel; +Cc: Ani Sinha, Igor Mammedov, jusual, Michael S. Tsirkin

The file 'tests/data/acpi/pc/DSDT.hpbridge' is a newly added acpi table file for
testing the pci bridge option 'acpi-pci-hotplug-with-bridge-support' under i440fx.
This change documents this fact.

Signed-off-by: Ani Sinha <ani@anisinha.ca>
---
 tests/qtest/bios-tables-test-allowed-diff.h | 1 +
 1 file changed, 1 insertion(+)

diff --git a/tests/qtest/bios-tables-test-allowed-diff.h b/tests/qtest/bios-tables-test-allowed-diff.h
index dfb8523c8b..96a9237355 100644
--- a/tests/qtest/bios-tables-test-allowed-diff.h
+++ b/tests/qtest/bios-tables-test-allowed-diff.h
@@ -1 +1,2 @@
 /* List of comma-separated changed AML files to ignore */
+"tests/data/acpi/pc/DSDT.hpbridge",
-- 
2.17.1



^ permalink raw reply related	[flat|nested] 14+ messages in thread

* [PATCH v1 2/3] tests/acpi: unit test for 'acpi-pci-hotplug-with-bridge-support' bridge flag
  2020-09-05 10:35 [PATCH v1 0/3] unit tests for change 'do not add hotplug related amls for cold plugged bridges' Ani Sinha
  2020-09-05 10:35 ` [PATCH v1 1/3] tests/acpi: list added acpi table binary file for pci bridge hotplug test Ani Sinha
@ 2020-09-05 10:35 ` Ani Sinha
  2020-09-10 17:04   ` Ani Sinha
  2020-09-05 10:35 ` [PATCH v1 3/3] tests/acpi: add newly added acpi DSDT table blob for pci bridge hotplug flag Ani Sinha
                   ` (2 subsequent siblings)
  4 siblings, 1 reply; 14+ messages in thread
From: Ani Sinha @ 2020-09-05 10:35 UTC (permalink / raw)
  To: qemu-devel
  Cc: Laurent Vivier, Thomas Huth, Michael S. Tsirkin, jusual,
	Paolo Bonzini, Ani Sinha, Igor Mammedov

This change adds a new unit test for the global flag
'acpi-pci-hotplug-with-bridge-support' which is available for cold plugged pci
bridges in i440fx. The flag can be used to turn off acpi based hotplug support
for all the slots of the pci bus.

Tested on the upstream qemu master branch on top of tag v5.1.0

Signed-off-by: Ani Sinha <ani@anisinha.ca>
---
 tests/qtest/bios-tables-test.c | 15 +++++++++++++++
 1 file changed, 15 insertions(+)

diff --git a/tests/qtest/bios-tables-test.c b/tests/qtest/bios-tables-test.c
index a2c0070306..e52a36e775 100644
--- a/tests/qtest/bios-tables-test.c
+++ b/tests/qtest/bios-tables-test.c
@@ -723,6 +723,20 @@ static void test_acpi_piix4_root_hotplug(void)
     free_test_data(&data);
 }
 
+static void test_acpi_piix4_bridge_hotplug(void)
+{
+    test_data data;
+
+    memset(&data, 0, sizeof(data));
+    data.machine = MACHINE_PC;
+    data.variant = ".hpbridge";
+    data.required_struct_types = base_required_struct_types;
+    data.required_struct_types_len = ARRAY_SIZE(base_required_struct_types);
+    test_acpi_one("-global PIIX4_PM.acpi-pci-hotplug-with-bridge-support=off "
+                  "-device pci-bridge,chassis_nr=1", &data);
+    free_test_data(&data);
+}
+
 static void test_acpi_q35_tcg(void)
 {
     test_data data;
@@ -1117,6 +1131,7 @@ int main(int argc, char *argv[])
         qtest_add_func("acpi/piix4", test_acpi_piix4_tcg);
         qtest_add_func("acpi/piix4/bridge", test_acpi_piix4_tcg_bridge);
         qtest_add_func("acpi/piix4/hotplug", test_acpi_piix4_root_hotplug);
+        qtest_add_func("acpi/piix4/brhotplug", test_acpi_piix4_bridge_hotplug);
         qtest_add_func("acpi/q35", test_acpi_q35_tcg);
         qtest_add_func("acpi/q35/bridge", test_acpi_q35_tcg_bridge);
         qtest_add_func("acpi/q35/mmio64", test_acpi_q35_tcg_mmio64);
-- 
2.17.1



^ permalink raw reply related	[flat|nested] 14+ messages in thread

* [PATCH v1 3/3] tests/acpi: add newly added acpi DSDT table blob for pci bridge hotplug flag
  2020-09-05 10:35 [PATCH v1 0/3] unit tests for change 'do not add hotplug related amls for cold plugged bridges' Ani Sinha
  2020-09-05 10:35 ` [PATCH v1 1/3] tests/acpi: list added acpi table binary file for pci bridge hotplug test Ani Sinha
  2020-09-05 10:35 ` [PATCH v1 2/3] tests/acpi: unit test for 'acpi-pci-hotplug-with-bridge-support' bridge flag Ani Sinha
@ 2020-09-05 10:35 ` Ani Sinha
  2020-09-05 12:26 ` [PATCH v1 0/3] unit tests for change 'do not add hotplug related amls for cold plugged bridges' Ani Sinha
  2020-09-11 16:08 ` Michael S. Tsirkin
  4 siblings, 0 replies; 14+ messages in thread
From: Ani Sinha @ 2020-09-05 10:35 UTC (permalink / raw)
  To: qemu-devel; +Cc: Ani Sinha, Igor Mammedov, jusual, Michael S. Tsirkin

This patch adds a binary blob corresponding to the DSDT acpi table. It is used
to unit test the flag 'acpi-pci-hotplug-with-bridge-support' used with pci
bridges.

This change also clears the file tests/qtest/bios-tables-test-allowed-diff.h
so that future changes which affect the table can be caught.

The following is the diff between files tests/data/acpi/pc/DSDT.bridge and
tests/data/acpi/pc/DSDT.hpbridge after disassembly :

@@ -1,30 +1,30 @@
 /*
  * Intel ACPI Component Architecture
  * AML/ASL+ Disassembler version 20180105 (64-bit version)
  * Copyright (c) 2000 - 2018 Intel Corporation
  *
  * Disassembling to symbolic ASL+ operators
  *
- * Disassembly of tests/data/acpi/pc/DSDT.bridge, Fri Sep  4 17:13:04 2020
+ * Disassembly of /tmp/aml-CISFQ0, Fri Sep  4 17:13:04 2020
  *
  * Original Table Header:
  *     Signature        "DSDT"
- *     Length           0x00001A89 (6793)
+ *     Length           0x0000131F (4895)
  *     Revision         0x01 **** 32-bit table (V1), no 64-bit math support
- *     Checksum         0x08
+ *     Checksum         0xF8
  *     OEM ID           "BOCHS "
  *     OEM Table ID     "BXPCDSDT"
  *     OEM Revision     0x00000001 (1)
  *     Compiler ID      "BXPC"
  *     Compiler Version 0x00000001 (1)
  */
 DefinitionBlock ("", "DSDT", 1, "BOCHS ", "BXPCDSDT", 0x00000001)
 {
     Scope (\)
     {
         OperationRegion (DBG, SystemIO, 0x0402, One)
         Field (DBG, ByteAcc, NoLock, Preserve)
         {
             DBGB,   8
         }

@@ -859,522 +859,32 @@
                 }

                 Method (_S2D, 0, NotSerialized)  // _S2D: S2 Device State
                 {
                     Return (Zero)
                 }

                 Method (_S3D, 0, NotSerialized)  // _S3D: S3 Device State
                 {
                     Return (Zero)
                 }
             }

             Device (S18)
             {
                 Name (_ADR, 0x00030000)  // _ADR: Address
-                Name (BSEL, One)
-                Device (S00)
-                {
-                    Name (_SUN, Zero)  // _SUN: Slot User Number
-                    Name (_ADR, Zero)  // _ADR: Address
-                    Method (_EJ0, 1, NotSerialized)  // _EJx: Eject Device
-                    {
-                        PCEJ (BSEL, _SUN)
-                    }
-                }
-
-                Device (S08)
-                {
-                    Name (_SUN, One)  // _SUN: Slot User Number
-                    Name (_ADR, 0x00010000)  // _ADR: Address
-                    Method (_EJ0, 1, NotSerialized)  // _EJx: Eject Device
-                    {
-                        PCEJ (BSEL, _SUN)
-                    }
-                }
-
-                Device (S10)
-                {
-                    Name (_SUN, 0x02)  // _SUN: Slot User Number
-                    Name (_ADR, 0x00020000)  // _ADR: Address
-                    Method (_EJ0, 1, NotSerialized)  // _EJx: Eject Device
-                    {
-                        PCEJ (BSEL, _SUN)
-                    }
-                }
-
-                Device (S18)
-                {
-                    Name (_SUN, 0x03)  // _SUN: Slot User Number
-                    Name (_ADR, 0x00030000)  // _ADR: Address
-                    Method (_EJ0, 1, NotSerialized)  // _EJx: Eject Device
-                    {
-                        PCEJ (BSEL, _SUN)
-                    }
-                }
-
-                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 & One))
-                    {
-                        Notify (S00, Arg1)
-                    }
-
-                    If ((Arg0 & 0x02))
-                    {
-                        Notify (S08, Arg1)
-                    }
-
-                    If ((Arg0 & 0x04))
-                    {
-                        Notify (S10, Arg1)
-                    }
-
-                    If ((Arg0 & 0x08))
-                    {
-                        Notify (S18, Arg1)
-                    }
-
-                    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 = One
-                    DVNT (PCIU, One)
-                    DVNT (PCID, 0x03)
-                }
             }

             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
@@ -1779,22 +1289,21 @@
                 If ((Arg0 & 0x40000000))
                 {
                     Notify (SF0, Arg1)
                 }

                 If ((Arg0 & 0x80000000))
                 {
                     Notify (SF8, Arg1)
                 }
             }

             Method (PCNT, 0, NotSerialized)
             {
                 BNUM = Zero
                 DVNT (PCIU, One)
                 DVNT (PCID, 0x03)
-                ^S18.PCNT ()
             }
         }
     }
 }

Signed-off-by: Ani Sinha <ani@anisinha.ca>
---
 tests/data/acpi/pc/DSDT.hpbridge            | Bin 0 -> 4895 bytes
 tests/qtest/bios-tables-test-allowed-diff.h |   1 -
 2 files changed, 1 deletion(-)
 create mode 100644 tests/data/acpi/pc/DSDT.hpbridge

diff --git a/tests/data/acpi/pc/DSDT.hpbridge b/tests/data/acpi/pc/DSDT.hpbridge
new file mode 100644
index 0000000000000000000000000000000000000000..ec130fcc9e33daf41336d965807161ed4d7c6a03
GIT binary patch
literal 4895
zcmb7IQE%Hu5}p+)hgwQDWixSVw~gQ=SF}AelAO9J?!^)*ONuR-5#`(+Xn>UM;^d-5
ziL?Rg8pSCp;HG&id^z01J*a`6<DYQ%6Z#W+f1!sqeyTb{YGp+>fmVPi&dj&p%<Rt2
zu58+7^V%E$J1uS+6+2V>i)EOoV*o(!^sQCpZE!kfvFtK6CNt-e8ocA9sOWz*i(6&(
zueSG3&-?6akF|W*d8R$xY58A0_I7|k4|jad=|x*|?V{^+7cHZjRoqI|OcuW9lHwN3
z1}N@U)nr;t2{9$5VwIW##1MpL45MN-Ymfx^{udQw=aEM8-2GDB%vcT6&FCwx-7J7l
z8qX(H>kE%-UN8CWu?NSVIvDh!H~sB#3;xkc!vB7X_o2^c6xV3j=`^1{N?^uF4l=+2
zXn%NzqM>k|?n2crxIwJwo?$4~?W_^w9+$QH{4GfU3FUNeuNO@Ohbc-JJw_$mT;-R`
z%mWV?E3-Y=!|$aSdULurYMWc5Q8RNdjZ%1g2{b|#lr_^B&EF-QISPJ}UoEpAr5`1b
z%j|{pLISq53UA2)ac*tHDu{VrGpn;14S1Yy@+{*gJjQS0-z;C`1O5^Jna^-Vao5aJ
zdY<c40pp(-3Qjk_VKs9iJ$blxFNLe|RGED)eJ&}=QYVNZZ*0~^W8y4a@AG3$rBex%
zB`p|pv(Yq06QT|?4XAzafhkMCaFr^`*)nx3!)`Jao^u7Og9HPYZ!3cjGvjpZ(p{`#
z<vGXNQAse0+0tD!6zjDHQ?<}Qf>Eq*)iMq%ZW!yJ-?WU<-I#Noq`|;%lhHq5`#{5;
zH%Q$Ft&Y`KbhUL(6{DNnwHi(EXJZ}Dht{)V;%SR_{4ZKO20Q-YgVqjk33hwh@h*ZA
zSaBQmbrbe_H;#8%FMZtN@<?sN-gl{yR6tPrc$ddUn&MC+jWh=A`ClIFa1F5L;qe}T
zf7n8QkM|h(dyl;qJZ$wn=h2N@5=Bd8O9joW#=We9j~qSn^jKE(x#~Tf)n4L|ciOmL
z5`C`fE7f~OBY}WMHa*SNZ>As-6w3iTAsvt7v)WUiwlU{6z4uA&bT=+xnplkC-bmu!
zqn)kbT-oU>eD0fRNJw$4GLC;L{vCim6Kv`}1wrBIY1gdU@Fl(TPN12gJphO>8i73T
z+6|jMX@^l@BWP4fKlEOl@Q%g!o4x18yypV%IgD@IdrrUDd(P?BD0gGRJCFSi_xUmR
z`M`aC!hJr%eSYZPoOF-f={IM;Jm!8maKAj^emTPZveVs^F?)N`y&Sq1B}5Gvmpl<J
zIo8=!u-Lj9&M}3GDq3A_BiL?E*WlY{{nu)gMlSeNP+Td)+R9Wu`ON?5;omY3KKS&L
zhYxl?_!JywSR3oZrjp{k%-{r0SQ2|I7FEziPI%IJbe)6(WDKiRXGXPdGow+v&#)n6
z8OVlFGqKgo5=b)a(nbc6W}%tUlWw(MReT^NCja(!(4{bzFuqj5u&UW?E=v)FM`2t~
z8_l)9#(Mm?4M#>co88wdQ`o}_3FrFuEm@o~lq1DXooG^x&V2BC3&)cNir(ilp7X{z
z%f@=&(`#|c==V8dlT^rXA-`UkHf*D=M5V#JX9e}xV;H&*lcYGqy|R2Rp<pF&x+dW`
z`OH5T8KQmWeYY<6D(9(!^}LvhOXs-|j$9WfT1yz4b~723=!NTbE?CUi-@hO)pT{P(
z1pRPQiBoW4bk0|IsH$*_;Rg#8D@*B9ePIpO3eB|26;SAQgVt#m^H3=nXzzchFJk$Y
zt&&^H=5c|7>kgGNt*W*ulPTEP!>Z1%fc`#Wb3hX@x*Uba=a|AW>OrJ0Av8k|_X-_M
z;q7LX^M5~1K@6{6_!-axFHfh*(<D<+&yo_UUZD9jIg(R&@B#e)>v@3CPKU~1K!*x_
zVh~uw4M!Oa{_{&{`R~t9-aZ=>>IgO%4E`?Qp%yyyO}8>b#wiGIWhtv}WeYe3VfP{Z
zSlbD&JZhL%&~|<}`Qe1gL~>WQDpn($$d^fQDlTYY=egiHJZCyyir(Bt_x7?oJ0&xW
z8Q*Wavx<xtJ-ou9^e$N_c<oPTlkIfhS^KlG76x#yRNKO0$rBoHuj3JGaV<`bQmcQw
z9b9?VJ`UEZh}{R%Q0;6syegycmYo|4xH>V=ku7IJKX}QDmt}f!x-)j}PB;*;5-Q%b
z^EBArs&hOi@OJ|0Wzc6`YQA(QBadVbpfr}CaRH4-L6-$9o)97HR3uceUJ}qtQPA6h
z74Od>s}czntO)^4L_yybtXx2OBvi2CVub;yQP35^niSAvBvi1b1T+-|eNV7X3+Qwt
zRIuU=FpPC33VKJdY67Z7LIrDDK+{ps_XX>$fX+rj1uOn03uB#&f))fT7J3NPBcX!z
zvVdNWf))kq6#=~x2^FmK0y-ZBH3aKb0lgXt6|Aoa=qpiBQ?M=w=t3k^ur3PdVidF_
zSYH*;S0kZ<^)&%~Eeg6OSYH>=*CU~V^_qZQy9lbUFPQi1%~&sa*v21UN7TUf10h4g
zouROb0yd%0(jkE?sl&F4r|*%Con$D*NE+E>l&~KRZ3;;v8#%*WJ+zUxm646y;ocnD
z$lrTpn>lP_L&f9a$i_V;WIP~HKC|O7ab)9e5q7*GpnPW6NXEJs_Dmq3*;h%%3KsTG
zAfMTTjIkDl9Z!iP+ZeM`)>u^|JLPST*(r0ZkC8n?@|b-UWnAfzy+bnE^=owh!2cxB
Q&v{xkJjAxx@WtfPuU}M<Jpcdz

literal 0
HcmV?d00001

diff --git a/tests/qtest/bios-tables-test-allowed-diff.h b/tests/qtest/bios-tables-test-allowed-diff.h
index 96a9237355..dfb8523c8b 100644
--- a/tests/qtest/bios-tables-test-allowed-diff.h
+++ b/tests/qtest/bios-tables-test-allowed-diff.h
@@ -1,2 +1 @@
 /* List of comma-separated changed AML files to ignore */
-"tests/data/acpi/pc/DSDT.hpbridge",
-- 
2.17.1



^ permalink raw reply related	[flat|nested] 14+ messages in thread

* Re: [PATCH v1 0/3] unit tests for change 'do not add hotplug related amls for cold plugged bridges'
  2020-09-05 10:35 [PATCH v1 0/3] unit tests for change 'do not add hotplug related amls for cold plugged bridges' Ani Sinha
                   ` (2 preceding siblings ...)
  2020-09-05 10:35 ` [PATCH v1 3/3] tests/acpi: add newly added acpi DSDT table blob for pci bridge hotplug flag Ani Sinha
@ 2020-09-05 12:26 ` Ani Sinha
  2020-09-11 16:08 ` Michael S. Tsirkin
  4 siblings, 0 replies; 14+ messages in thread
From: Ani Sinha @ 2020-09-05 12:26 UTC (permalink / raw)
  To: QEMU Developers; +Cc: Igor Mammedov, Julia Suvorova, Michael S. Tsirkin

On Sat, Sep 5, 2020 at 4:05 PM Ani Sinha <ani@anisinha.ca> wrote:
>
> The following patchset adds the unit test for the change:
> f80ba9e599 ("tests/acpi: unit test for 'acpi-pci-hotplug-with-bridge-support' bridge flag")

Apologies. This change is incorrect. It should be :
e78c1c9a2e ("i440fx/acpi: do not add hotplug related amls for cold
plugged bridges")

>
> Please compare the diff of the DSDT table attached with the commit log with the following diff which
> was generated before appplying the above change. The major difference between the diffs are the absence
> of the following lines in the diff corresponding to this change:
>
> +                Name (_SUN, 0x03)  // _SUN: Slot User Number
> +                Method (_EJ0, 1, NotSerialized)  // _EJx: Eject Device
>                  {
> +                    PCEJ (BSEL, _SUN)
>
> +                If ((Arg0 & 0x08))
> +                {
> +                    Notify (S18, Arg1)
> +                }
> +
>
> These are hotplug related amls which were present for slot 3 in the root pci bus before this change was applied.
> With the change, these amls have been removed. Hence, slot 3 where the bridge is attached is no longer hotplug
> capable.
>
> --Ani
>
> @@ -1,30 +1,30 @@
>  /*
>   * Intel ACPI Component Architecture
>   * AML/ASL+ Disassembler version 20180105 (64-bit version)
>   * Copyright (c) 2000 - 2018 Intel Corporation
>   *
>   * Disassembling to symbolic ASL+ operators
>   *
> - * Disassembly of tests/data/acpi/pc/DSDT.bridge, Fri Sep  4 11:08:58 2020
> + * Disassembly of /tmp/aml-IEQEQ0, Fri Sep  4 11:08:58 2020
>   *
>   * Original Table Header:
>   *     Signature        "DSDT"
> - *     Length           0x00001A89 (6793)
> + *     Length           0x00001346 (4934)
>   *     Revision         0x01 **** 32-bit table (V1), no 64-bit math support
> - *     Checksum         0x08
> + *     Checksum         0xBF
>   *     OEM ID           "BOCHS "
>   *     OEM Table ID     "BXPCDSDT"
>   *     OEM Revision     0x00000001 (1)
>   *     Compiler ID      "BXPC"
>   *     Compiler Version 0x00000001 (1)
>   */
>  DefinitionBlock ("", "DSDT", 1, "BOCHS ", "BXPCDSDT", 0x00000001)
>  {
>      Scope (\)
>      {
>          OperationRegion (DBG, SystemIO, 0x0402, One)
>          Field (DBG, ByteAcc, NoLock, Preserve)
>          {
>              DBGB,   8
>          }
>
> @@ -859,521 +859,36 @@
>                  }
>
>                  Method (_S2D, 0, NotSerialized)  // _S2D: S2 Device State
>                  {
>                      Return (Zero)
>                  }
>
>                  Method (_S3D, 0, NotSerialized)  // _S3D: S3 Device State
>                  {
>                      Return (Zero)
>                  }
>              }
>
>              Device (S18)
>              {
>                  Name (_ADR, 0x00030000)  // _ADR: Address
> -                Name (BSEL, One)
> -                Device (S00)
> -                {
> -                    Name (_SUN, Zero)  // _SUN: Slot User Number
> -                    Name (_ADR, Zero)  // _ADR: Address
> -                    Method (_EJ0, 1, NotSerialized)  // _EJx: Eject Device
> -                    {
> -                        PCEJ (BSEL, _SUN)
> -                    }
> -                }
> -
> -                Device (S08)
> -                {
> -                    Name (_SUN, One)  // _SUN: Slot User Number
> -                    Name (_ADR, 0x00010000)  // _ADR: Address
> -                    Method (_EJ0, 1, NotSerialized)  // _EJx: Eject Device
> -                    {
> -                        PCEJ (BSEL, _SUN)
> -                    }
> -                }
> -
> -                Device (S10)
> -                {
> -                    Name (_SUN, 0x02)  // _SUN: Slot User Number
> -                    Name (_ADR, 0x00020000)  // _ADR: Address
> -                    Method (_EJ0, 1, NotSerialized)  // _EJx: Eject Device
> -                    {
> -                        PCEJ (BSEL, _SUN)
> -                    }
> -                }
> -
> -                Device (S18)
> -                {
> -                    Name (_SUN, 0x03)  // _SUN: Slot User Number
> -                    Name (_ADR, 0x00030000)  // _ADR: Address
> -                    Method (_EJ0, 1, NotSerialized)  // _EJx: Eject Device
> -                    {
> -                        PCEJ (BSEL, _SUN)
> -                    }
> -                }
> -
> -                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 & One))
> -                    {
> -                        Notify (S00, Arg1)
> -                    }
> -
> -                    If ((Arg0 & 0x02))
> -                    {
> -                        Notify (S08, Arg1)
> -                    }
> -
> -                    If ((Arg0 & 0x04))
> -                    {
> -                        Notify (S10, Arg1)
> -                    }
> -
> -                    If ((Arg0 & 0x08))
> -                    {
> -                        Notify (S18, Arg1)
> -                    }
> -
> -                    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)
> +                Name (_SUN, 0x03)  // _SUN: Slot User Number
> +                Method (_EJ0, 1, NotSerialized)  // _EJx: Eject Device
>                  {
> -                    BNUM = One
> -                    DVNT (PCIU, One)
> -                    DVNT (PCID, 0x03)
> +                    PCEJ (BSEL, _SUN)
>                  }
>              }
>
>              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
> @@ -1633,32 +1148,37 @@
>                      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 & 0x08))
> +                {
> +                    Notify (S18, Arg1)
> +                }
> +
>                  If ((Arg0 & 0x10))
>                  {
>                      Notify (S20, Arg1)
>                  }
>
>                  If ((Arg0 & 0x20))
>                  {
>                      Notify (S28, Arg1)
>                  }
>
>                  If ((Arg0 & 0x40))
>                  {
>                      Notify (S30, Arg1)
>                  }
>
>                  If ((Arg0 & 0x80))
> @@ -1779,22 +1299,21 @@
>                  If ((Arg0 & 0x40000000))
>                  {
>                      Notify (SF0, Arg1)
>                  }
>
>                  If ((Arg0 & 0x80000000))
>                  {
>                      Notify (SF8, Arg1)
>                  }
>              }
>
>              Method (PCNT, 0, NotSerialized)
>              {
>                  BNUM = Zero
>                  DVNT (PCIU, One)
>                  DVNT (PCID, 0x03)
> -                ^S18.PCNT ()
>              }
>          }
>      }
>  }
>
>
> ***
>
> Ani Sinha (3):
>   tests/acpi: list added acpi table binary file for pci bridge hotplug
>     test
>   tests/acpi: unit test for 'acpi-pci-hotplug-with-bridge-support'
>     bridge flag
>   tests/acpi: add newly added acpi DSDT table blob for pci bridge
>     hotplug flag
>
>  tests/data/acpi/pc/DSDT.hpbridge | Bin 0 -> 4895 bytes
>  tests/qtest/bios-tables-test.c   |  15 +++++++++++++++
>  2 files changed, 15 insertions(+)
>  create mode 100644 tests/data/acpi/pc/DSDT.hpbridge
>
> --
> 2.17.1
>


^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [PATCH v1 2/3] tests/acpi: unit test for 'acpi-pci-hotplug-with-bridge-support' bridge flag
  2020-09-05 10:35 ` [PATCH v1 2/3] tests/acpi: unit test for 'acpi-pci-hotplug-with-bridge-support' bridge flag Ani Sinha
@ 2020-09-10 17:04   ` Ani Sinha
  2020-09-11 12:45     ` Igor Mammedov
  2020-09-11 14:59     ` Michael S. Tsirkin
  0 siblings, 2 replies; 14+ messages in thread
From: Ani Sinha @ 2020-09-10 17:04 UTC (permalink / raw)
  To: qemu-devel
  Cc: Laurent Vivier, Thomas Huth, Michael S. Tsirkin, jusual,
	Paolo Bonzini, Igor Mammedov

[-- Attachment #1: Type: text/plain, Size: 1916 bytes --]

On Sep 5, 2020, 16:05 +0530, Ani Sinha <ani@anisinha.ca>, wrote:
> This change adds a new unit test for the global flag
> 'acpi-pci-hotplug-with-bridge-support' which is available for cold plugged pci
> bridges in i440fx. The flag can be used to turn off acpi based hotplug support
> for all the slots of the pci bus.
>
> Tested on the upstream qemu master branch on top of tag v5.1.0

Can someone please review this?
>
> Signed-off-by: Ani Sinha <ani@anisinha.ca>
>
>
> ---
> tests/qtest/bios-tables-test.c | 15 +++++++++++++++
> 1 file changed, 15 insertions(+)
>
> diff --git a/tests/qtest/bios-tables-test.c b/tests/qtest/bios-tables-test.c
> index a2c0070306..e52a36e775 100644
> --- a/tests/qtest/bios-tables-test.c
> +++ b/tests/qtest/bios-tables-test.c
> @@ -723,6 +723,20 @@ static void test_acpi_piix4_root_hotplug(void)
> free_test_data(&data);
> }
>
> +static void test_acpi_piix4_bridge_hotplug(void)
> +{
> + test_data data;
> +
> + memset(&data, 0, sizeof(data));
> + data.machine = MACHINE_PC;
> + data.variant = ".hpbridge";
> + data.required_struct_types = base_required_struct_types;
> + data.required_struct_types_len = ARRAY_SIZE(base_required_struct_types);
> + test_acpi_one("-global PIIX4_PM.acpi-pci-hotplug-with-bridge-support=off "
> + "-device pci-bridge,chassis_nr=1", &data);
> + free_test_data(&data);
> +}
> +
> static void test_acpi_q35_tcg(void)
> {
> test_data data;
> @@ -1117,6 +1131,7 @@ int main(int argc, char *argv[])
> qtest_add_func("acpi/piix4", test_acpi_piix4_tcg);
> qtest_add_func("acpi/piix4/bridge", test_acpi_piix4_tcg_bridge);
> qtest_add_func("acpi/piix4/hotplug", test_acpi_piix4_root_hotplug);
> + qtest_add_func("acpi/piix4/brhotplug", test_acpi_piix4_bridge_hotplug);
> qtest_add_func("acpi/q35", test_acpi_q35_tcg);
> qtest_add_func("acpi/q35/bridge", test_acpi_q35_tcg_bridge);
> qtest_add_func("acpi/q35/mmio64", test_acpi_q35_tcg_mmio64);
> --
> 2.17.1
>

[-- Attachment #2: Type: text/html, Size: 11855 bytes --]

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [PATCH v1 2/3] tests/acpi: unit test for 'acpi-pci-hotplug-with-bridge-support' bridge flag
  2020-09-10 17:04   ` Ani Sinha
@ 2020-09-11 12:45     ` Igor Mammedov
  2020-09-11 13:29       ` Ani Sinha
  2020-09-11 14:59     ` Michael S. Tsirkin
  1 sibling, 1 reply; 14+ messages in thread
From: Igor Mammedov @ 2020-09-11 12:45 UTC (permalink / raw)
  To: Ani Sinha
  Cc: Laurent Vivier, Thomas Huth, Michael S. Tsirkin, jusual,
	qemu-devel, Paolo Bonzini

On Thu, 10 Sep 2020 22:34:20 +0530
Ani Sinha <ani@anisinha.ca> wrote:

> On Sep 5, 2020, 16:05 +0530, Ani Sinha <ani@anisinha.ca>, wrote:
> > This change adds a new unit test for the global flag
> > 'acpi-pci-hotplug-with-bridge-support' which is available for cold plugged pci
> > bridges in i440fx. The flag can be used to turn off acpi based hotplug support
> > for all the slots of the pci bus.
> >
> > Tested on the upstream qemu master branch on top of tag v5.1.0  
> 
> Can someone please review this?
Hi,
Are there other patches of yours,
that should be applied/reviewed before this one?

> >
> > Signed-off-by: Ani Sinha <ani@anisinha.ca>
> >
> >
> > ---
> > tests/qtest/bios-tables-test.c | 15 +++++++++++++++
> > 1 file changed, 15 insertions(+)
> >
> > diff --git a/tests/qtest/bios-tables-test.c b/tests/qtest/bios-tables-test.c
> > index a2c0070306..e52a36e775 100644
> > --- a/tests/qtest/bios-tables-test.c
> > +++ b/tests/qtest/bios-tables-test.c
> > @@ -723,6 +723,20 @@ static void test_acpi_piix4_root_hotplug(void)
> > free_test_data(&data);
> > }
> >
> > +static void test_acpi_piix4_bridge_hotplug(void)
> > +{
> > + test_data data;
> > +
> > + memset(&data, 0, sizeof(data));
> > + data.machine = MACHINE_PC;
> > + data.variant = ".hpbridge";
> > + data.required_struct_types = base_required_struct_types;
> > + data.required_struct_types_len = ARRAY_SIZE(base_required_struct_types);
> > + test_acpi_one("-global PIIX4_PM.acpi-pci-hotplug-with-bridge-support=off "
> > + "-device pci-bridge,chassis_nr=1", &data);
> > + free_test_data(&data);
> > +}
> > +
> > static void test_acpi_q35_tcg(void)
> > {
> > test_data data;
> > @@ -1117,6 +1131,7 @@ int main(int argc, char *argv[])
> > qtest_add_func("acpi/piix4", test_acpi_piix4_tcg);
> > qtest_add_func("acpi/piix4/bridge", test_acpi_piix4_tcg_bridge);
> > qtest_add_func("acpi/piix4/hotplug", test_acpi_piix4_root_hotplug);
> > + qtest_add_func("acpi/piix4/brhotplug", test_acpi_piix4_bridge_hotplug);
> > qtest_add_func("acpi/q35", test_acpi_q35_tcg);
> > qtest_add_func("acpi/q35/bridge", test_acpi_q35_tcg_bridge);
> > qtest_add_func("acpi/q35/mmio64", test_acpi_q35_tcg_mmio64);
> > --
> > 2.17.1
> >  



^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [PATCH v1 2/3] tests/acpi: unit test for 'acpi-pci-hotplug-with-bridge-support' bridge flag
  2020-09-11 12:45     ` Igor Mammedov
@ 2020-09-11 13:29       ` Ani Sinha
  0 siblings, 0 replies; 14+ messages in thread
From: Ani Sinha @ 2020-09-11 13:29 UTC (permalink / raw)
  To: Igor Mammedov
  Cc: Laurent Vivier, Thomas Huth, Michael S. Tsirkin, jusual,
	qemu-devel, Paolo Bonzini

[-- Attachment #1: Type: text/plain, Size: 2534 bytes --]

On Sep 11, 2020, 18:15 +0530, Igor Mammedov <imammedo@redhat.com>, wrote:
> On Thu, 10 Sep 2020 22:34:20 +0530
> Ani Sinha <ani@anisinha.ca> wrote:
>
> > On Sep 5, 2020, 16:05 +0530, Ani Sinha <ani@anisinha.ca>, wrote:
> > > This change adds a new unit test for the global flag
> > > 'acpi-pci-hotplug-with-bridge-support' which is available for cold plugged pci
> > > bridges in i440fx. The flag can be used to turn off acpi based hotplug support
> > > for all the slots of the pci bus.
> > >
> > > Tested on the upstream qemu master branch on top of tag v5.1.0
> >
> > Can someone please review this?
> Hi,
> Are there other patches of yours,
> that should be applied/reviewed before this one?

Yes please see

“i440fx/acpi: Do not add hotplug related amls for cold plugged bridges”


> > >
> > > Signed-off-by: Ani Sinha <ani@anisinha.ca>
> > >
> > >
> > > ---
> > > tests/qtest/bios-tables-test.c | 15 +++++++++++++++
> > > 1 file changed, 15 insertions(+)
> > >
> > > diff --git a/tests/qtest/bios-tables-test.c b/tests/qtest/bios-tables-test.c
> > > index a2c0070306..e52a36e775 100644
> > > --- a/tests/qtest/bios-tables-test.c
> > > +++ b/tests/qtest/bios-tables-test.c
> > > @@ -723,6 +723,20 @@ static void test_acpi_piix4_root_hotplug(void)
> > > free_test_data(&data);
> > > }
> > >
> > > +static void test_acpi_piix4_bridge_hotplug(void)
> > > +{
> > > + test_data data;
> > > +
> > > + memset(&data, 0, sizeof(data));
> > > + data.machine = MACHINE_PC;
> > > + data.variant = ".hpbridge";
> > > + data.required_struct_types = base_required_struct_types;
> > > + data.required_struct_types_len = ARRAY_SIZE(base_required_struct_types);
> > > + test_acpi_one("-global PIIX4_PM.acpi-pci-hotplug-with-bridge-support=off "
> > > + "-device pci-bridge,chassis_nr=1", &data);
> > > + free_test_data(&data);
> > > +}
> > > +
> > > static void test_acpi_q35_tcg(void)
> > > {
> > > test_data data;
> > > @@ -1117,6 +1131,7 @@ int main(int argc, char *argv[])
> > > qtest_add_func("acpi/piix4", test_acpi_piix4_tcg);
> > > qtest_add_func("acpi/piix4/bridge", test_acpi_piix4_tcg_bridge);
> > > qtest_add_func("acpi/piix4/hotplug", test_acpi_piix4_root_hotplug);
> > > + qtest_add_func("acpi/piix4/brhotplug", test_acpi_piix4_bridge_hotplug);
> > > qtest_add_func("acpi/q35", test_acpi_q35_tcg);
> > > qtest_add_func("acpi/q35/bridge", test_acpi_q35_tcg_bridge);
> > > qtest_add_func("acpi/q35/mmio64", test_acpi_q35_tcg_mmio64);
> > > --
> > > 2.17.1
> > >
>

[-- Attachment #2: Type: text/html, Size: 30562 bytes --]

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [PATCH v1 2/3] tests/acpi: unit test for 'acpi-pci-hotplug-with-bridge-support' bridge flag
  2020-09-10 17:04   ` Ani Sinha
  2020-09-11 12:45     ` Igor Mammedov
@ 2020-09-11 14:59     ` Michael S. Tsirkin
  2020-09-11 15:06       ` Ani Sinha
  1 sibling, 1 reply; 14+ messages in thread
From: Michael S. Tsirkin @ 2020-09-11 14:59 UTC (permalink / raw)
  To: Ani Sinha
  Cc: Laurent Vivier, Thomas Huth, jusual, qemu-devel, Paolo Bonzini,
	Igor Mammedov

On Thu, Sep 10, 2020 at 10:34:20PM +0530, Ani Sinha wrote:
> On Sep 5, 2020, 16:05 +0530, Ani Sinha <ani@anisinha.ca>, wrote:
> 
>     This change adds a new unit test for the global flag
> 
>     'acpi-pci-hotplug-with-bridge-support' which is available for cold plugged
>     pci
> 
>     bridges in i440fx. The flag can be used to turn off acpi based hotplug
>     support
> 
>     for all the slots of the pci bus.
> 
> 
> 
>     Tested on the upstream qemu master branch on top of tag v5.1.0
> 
> 
> Can someone please review this? 
> 
> 
> 
>     Signed-off-by: Ani Sinha <ani@anisinha.ca>
> 
> 
> 
> 
I queues this.

>     ---
> 
>     tests/qtest/bios-tables-test.c | 15 +++++++++++++++
> 
>     1 file changed, 15 insertions(+)
> 
> 
> 
>     diff --git a/tests/qtest/bios-tables-test.c b/tests/qtest/
>     bios-tables-test.c
> 
>     index a2c0070306..e52a36e775 100644
> 
>     --- a/tests/qtest/bios-tables-test.c
> 
>     +++ b/tests/qtest/bios-tables-test.c
> 
>     @@ -723,6 +723,20 @@ static void test_acpi_piix4_root_hotplug(void)
> 
>     free_test_data(&data);
> 
>     }
> 
> 
> 
>     +static void test_acpi_piix4_bridge_hotplug(void)
> 
>     +{
> 
>     + test_data data;
> 
>     +
> 
>     + memset(&data, 0, sizeof(data));
> 
>     + data.machine = MACHINE_PC;
> 
>     + data.variant = ".hpbridge";
> 
>     + data.required_struct_types = base_required_struct_types;
> 
>     + data.required_struct_types_len = ARRAY_SIZE(base_required_struct_types);
> 
>     + test_acpi_one("-global PIIX4_PM.acpi-pci-hotplug-with-bridge-support=off
>     "
> 
>     + "-device pci-bridge,chassis_nr=1", &data);
> 
>     + free_test_data(&data);
> 
>     +}
> 
>     +
> 
>     static void test_acpi_q35_tcg(void)
> 
>     {
> 
>     test_data data;
> 
>     @@ -1117,6 +1131,7 @@ int main(int argc, char *argv[])
> 
>     qtest_add_func("acpi/piix4", test_acpi_piix4_tcg);
> 
>     qtest_add_func("acpi/piix4/bridge", test_acpi_piix4_tcg_bridge);
> 
>     qtest_add_func("acpi/piix4/hotplug", test_acpi_piix4_root_hotplug);
> 
>     + qtest_add_func("acpi/piix4/brhotplug", test_acpi_piix4_bridge_hotplug);
> 
>     qtest_add_func("acpi/q35", test_acpi_q35_tcg);
> 
>     qtest_add_func("acpi/q35/bridge", test_acpi_q35_tcg_bridge);
> 
>     qtest_add_func("acpi/q35/mmio64", test_acpi_q35_tcg_mmio64);
> 
>     --
> 
>     2.17.1
> 
> 
> 



^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [PATCH v1 2/3] tests/acpi: unit test for 'acpi-pci-hotplug-with-bridge-support' bridge flag
  2020-09-11 14:59     ` Michael S. Tsirkin
@ 2020-09-11 15:06       ` Ani Sinha
  0 siblings, 0 replies; 14+ messages in thread
From: Ani Sinha @ 2020-09-11 15:06 UTC (permalink / raw)
  To: Michael S. Tsirkin
  Cc: Laurent Vivier, Thomas Huth, Julia Suvorova, QEMU Developers,
	Paolo Bonzini, Igor Mammedov

On Fri, Sep 11, 2020 at 8:29 PM Michael S. Tsirkin <mst@redhat.com> wrote:
>
> On Thu, Sep 10, 2020 at 10:34:20PM +0530, Ani Sinha wrote:
> > On Sep 5, 2020, 16:05 +0530, Ani Sinha <ani@anisinha.ca>, wrote:
> >
> >     This change adds a new unit test for the global flag
> >
> >     'acpi-pci-hotplug-with-bridge-support' which is available for cold plugged
> >     pci
> >
> >     bridges in i440fx. The flag can be used to turn off acpi based hotplug
> >     support
> >
> >     for all the slots of the pci bus.
> >
> >
> >
> >     Tested on the upstream qemu master branch on top of tag v5.1.0
> >
> >
> > Can someone please review this?
> >
> >
> >
> >     Signed-off-by: Ani Sinha <ani@anisinha.ca>
> >
> >
> >
> >
> I queues this.

cool. When is the next pull Michael?

>
> >     ---
> >
> >     tests/qtest/bios-tables-test.c | 15 +++++++++++++++
> >
> >     1 file changed, 15 insertions(+)
> >
> >
> >
> >     diff --git a/tests/qtest/bios-tables-test.c b/tests/qtest/
> >     bios-tables-test.c
> >
> >     index a2c0070306..e52a36e775 100644
> >
> >     --- a/tests/qtest/bios-tables-test.c
> >
> >     +++ b/tests/qtest/bios-tables-test.c
> >
> >     @@ -723,6 +723,20 @@ static void test_acpi_piix4_root_hotplug(void)
> >
> >     free_test_data(&data);
> >
> >     }
> >
> >
> >
> >     +static void test_acpi_piix4_bridge_hotplug(void)
> >
> >     +{
> >
> >     + test_data data;
> >
> >     +
> >
> >     + memset(&data, 0, sizeof(data));
> >
> >     + data.machine = MACHINE_PC;
> >
> >     + data.variant = ".hpbridge";
> >
> >     + data.required_struct_types = base_required_struct_types;
> >
> >     + data.required_struct_types_len = ARRAY_SIZE(base_required_struct_types);
> >
> >     + test_acpi_one("-global PIIX4_PM.acpi-pci-hotplug-with-bridge-support=off
> >     "
> >
> >     + "-device pci-bridge,chassis_nr=1", &data);
> >
> >     + free_test_data(&data);
> >
> >     +}
> >
> >     +
> >
> >     static void test_acpi_q35_tcg(void)
> >
> >     {
> >
> >     test_data data;
> >
> >     @@ -1117,6 +1131,7 @@ int main(int argc, char *argv[])
> >
> >     qtest_add_func("acpi/piix4", test_acpi_piix4_tcg);
> >
> >     qtest_add_func("acpi/piix4/bridge", test_acpi_piix4_tcg_bridge);
> >
> >     qtest_add_func("acpi/piix4/hotplug", test_acpi_piix4_root_hotplug);
> >
> >     + qtest_add_func("acpi/piix4/brhotplug", test_acpi_piix4_bridge_hotplug);
> >
> >     qtest_add_func("acpi/q35", test_acpi_q35_tcg);
> >
> >     qtest_add_func("acpi/q35/bridge", test_acpi_q35_tcg_bridge);
> >
> >     qtest_add_func("acpi/q35/mmio64", test_acpi_q35_tcg_mmio64);
> >
> >     --
> >
> >     2.17.1
> >
> >
> >
>


^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [PATCH v1 0/3] unit tests for change 'do not add hotplug related amls for cold plugged bridges'
  2020-09-05 10:35 [PATCH v1 0/3] unit tests for change 'do not add hotplug related amls for cold plugged bridges' Ani Sinha
                   ` (3 preceding siblings ...)
  2020-09-05 12:26 ` [PATCH v1 0/3] unit tests for change 'do not add hotplug related amls for cold plugged bridges' Ani Sinha
@ 2020-09-11 16:08 ` Michael S. Tsirkin
  2020-09-11 16:11   ` Ani Sinha
  4 siblings, 1 reply; 14+ messages in thread
From: Michael S. Tsirkin @ 2020-09-11 16:08 UTC (permalink / raw)
  To: Ani Sinha; +Cc: Igor Mammedov, jusual, qemu-devel


I am not sure why, but the expected files did not match for me.

I dropped these for now:

tests/acpi: add a new ACPI table in order to test root pci hotplug on/off
tests/acpi: add a new unit test to test hotplug off/on feature on the root pci bus
tests/acpi: document addition of table DSDT.roothp for unit testing root pci hotplug on/off
tests/acpi: add newly added acpi DSDT table blob for pci bridge hotplug flag
tests/acpi: unit test for 'acpi-pci-hotplug-with-bridge-support' bridge flag
tests/acpi: list added acpi table binary file for pci bridge hotplug test

I suspect you have another change in there.

Pls check and post a single series with all these tests.

-- 
MST



^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [PATCH v1 0/3] unit tests for change 'do not add hotplug related amls for cold plugged bridges'
  2020-09-11 16:08 ` Michael S. Tsirkin
@ 2020-09-11 16:11   ` Ani Sinha
  2020-09-11 16:21     ` Ani Sinha
  0 siblings, 1 reply; 14+ messages in thread
From: Ani Sinha @ 2020-09-11 16:11 UTC (permalink / raw)
  To: Michael S. Tsirkin; +Cc: Igor Mammedov, Julia Suvorova, QEMU Developers

On Fri, Sep 11, 2020 at 9:38 PM Michael S. Tsirkin <mst@redhat.com> wrote:
>
>
> I am not sure why, but the expected files did not match for me.
>
> I dropped these for now:
>
> tests/acpi: add a new ACPI table in order to test root pci hotplug on/off
> tests/acpi: add a new unit test to test hotplug off/on feature on the root pci bus
> tests/acpi: document addition of table DSDT.roothp for unit testing root pci hotplug on/off

This was already reviewed by Igor.

> tests/acpi: add newly added acpi DSDT table blob for pci bridge hotplug flag
> tests/acpi: unit test for 'acpi-pci-hotplug-with-bridge-support' bridge flag
> tests/acpi: list added acpi table binary file for pci bridge hotplug test
>

I will double check this one.

> I suspect you have another change in there.
>
> Pls check and post a single series with all these tests.
>
> --
> MST
>


^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [PATCH v1 0/3] unit tests for change 'do not add hotplug related amls for cold plugged bridges'
  2020-09-11 16:11   ` Ani Sinha
@ 2020-09-11 16:21     ` Ani Sinha
  2020-09-11 18:10       ` Ani Sinha
  0 siblings, 1 reply; 14+ messages in thread
From: Ani Sinha @ 2020-09-11 16:21 UTC (permalink / raw)
  To: Michael S. Tsirkin; +Cc: Igor Mammedov, Julia Suvorova, QEMU Developers

I can't repro the breakage. What test command line are you running
with? I am using " make check-qtest-x86_64 V=1"

On Fri, Sep 11, 2020 at 9:41 PM Ani Sinha <ani@anisinha.ca> wrote:
>
> On Fri, Sep 11, 2020 at 9:38 PM Michael S. Tsirkin <mst@redhat.com> wrote:
> >
> >
> > I am not sure why, but the expected files did not match for me.
> >
> > I dropped these for now:
> >
> > tests/acpi: add a new ACPI table in order to test root pci hotplug on/off
> > tests/acpi: add a new unit test to test hotplug off/on feature on the root pci bus
> > tests/acpi: document addition of table DSDT.roothp for unit testing root pci hotplug on/off
>
> This was already reviewed by Igor.
>
> > tests/acpi: add newly added acpi DSDT table blob for pci bridge hotplug flag
> > tests/acpi: unit test for 'acpi-pci-hotplug-with-bridge-support' bridge flag
> > tests/acpi: list added acpi table binary file for pci bridge hotplug test
> >
>
> I will double check this one.
>
> > I suspect you have another change in there.
> >
> > Pls check and post a single series with all these tests.
> >
> > --
> > MST
> >


^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [PATCH v1 0/3] unit tests for change 'do not add hotplug related amls for cold plugged bridges'
  2020-09-11 16:21     ` Ani Sinha
@ 2020-09-11 18:10       ` Ani Sinha
  0 siblings, 0 replies; 14+ messages in thread
From: Ani Sinha @ 2020-09-11 18:10 UTC (permalink / raw)
  To: Michael S. Tsirkin; +Cc: Igor Mammedov, Julia Suvorova, QEMU Developers

On Fri, Sep 11, 2020 at 9:51 PM Ani Sinha <ani@anisinha.ca> wrote:
>
> I can't repro the breakage. What test command line are you running
> with? I am using " make check-qtest-x86_64 V=1"

Ok I was working off v5.1.0 tag. Did not realize. I rebased all my
patches to the latest master and reworked the unit tests.
I have sent you the entire patch set as exists in my workspace. It
passes unit tests.

>
> On Fri, Sep 11, 2020 at 9:41 PM Ani Sinha <ani@anisinha.ca> wrote:
> >
> > On Fri, Sep 11, 2020 at 9:38 PM Michael S. Tsirkin <mst@redhat.com> wrote:
> > >
> > >
> > > I am not sure why, but the expected files did not match for me.
> > >
> > > I dropped these for now:
> > >
> > > tests/acpi: add a new ACPI table in order to test root pci hotplug on/off
> > > tests/acpi: add a new unit test to test hotplug off/on feature on the root pci bus
> > > tests/acpi: document addition of table DSDT.roothp for unit testing root pci hotplug on/off
> >
> > This was already reviewed by Igor.
> >
> > > tests/acpi: add newly added acpi DSDT table blob for pci bridge hotplug flag
> > > tests/acpi: unit test for 'acpi-pci-hotplug-with-bridge-support' bridge flag
> > > tests/acpi: list added acpi table binary file for pci bridge hotplug test
> > >
> >
> > I will double check this one.
> >
> > > I suspect you have another change in there.
> > >
> > > Pls check and post a single series with all these tests.
> > >
> > > --
> > > MST
> > >


^ permalink raw reply	[flat|nested] 14+ messages in thread

end of thread, other threads:[~2020-09-11 18:14 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-09-05 10:35 [PATCH v1 0/3] unit tests for change 'do not add hotplug related amls for cold plugged bridges' Ani Sinha
2020-09-05 10:35 ` [PATCH v1 1/3] tests/acpi: list added acpi table binary file for pci bridge hotplug test Ani Sinha
2020-09-05 10:35 ` [PATCH v1 2/3] tests/acpi: unit test for 'acpi-pci-hotplug-with-bridge-support' bridge flag Ani Sinha
2020-09-10 17:04   ` Ani Sinha
2020-09-11 12:45     ` Igor Mammedov
2020-09-11 13:29       ` Ani Sinha
2020-09-11 14:59     ` Michael S. Tsirkin
2020-09-11 15:06       ` Ani Sinha
2020-09-05 10:35 ` [PATCH v1 3/3] tests/acpi: add newly added acpi DSDT table blob for pci bridge hotplug flag Ani Sinha
2020-09-05 12:26 ` [PATCH v1 0/3] unit tests for change 'do not add hotplug related amls for cold plugged bridges' Ani Sinha
2020-09-11 16:08 ` Michael S. Tsirkin
2020-09-11 16:11   ` Ani Sinha
2020-09-11 16:21     ` Ani Sinha
2020-09-11 18:10       ` Ani Sinha

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.