diff mbox series

[v1,2/3] tests/acpi: unit test for 'acpi-pci-hotplug-with-bridge-support' bridge flag

Message ID 20200905103520.12626-3-ani@anisinha.ca (mailing list archive)
State New, archived
Headers show
Series unit tests for change 'do not add hotplug related amls for cold plugged bridges' | expand

Commit Message

Ani Sinha Sept. 5, 2020, 10:35 a.m. UTC
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(+)

Comments

Ani Sinha Sept. 10, 2020, 5:04 p.m. UTC | #1
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
>
Igor Mammedov Sept. 11, 2020, 12:45 p.m. UTC | #2
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
> >
Ani Sinha Sept. 11, 2020, 1:29 p.m. UTC | #3
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
> > >
>
Michael S. Tsirkin Sept. 11, 2020, 2:59 p.m. UTC | #4
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
> 
> 
>
Ani Sinha Sept. 11, 2020, 3:06 p.m. UTC | #5
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
> >
> >
> >
>
diff mbox series

Patch

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);