qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH 2/3] tests/x86: Use 'pc' machine type for hotplug tests


From: Michael S. Tsirkin
Subject: Re: [PATCH 2/3] tests/x86: Use 'pc' machine type for hotplug tests
Date: Thu, 17 Feb 2022 03:18:14 -0500

On Tue, Feb 15, 2022 at 04:25:32PM +0000, Dr. David Alan Gilbert (git) wrote:
> From: "Dr. David Alan Gilbert" <dgilbert@redhat.com>
> 
> Hotplug tests need a bridge setting up on q35, for now
> keep them on 'pc'.
> 
> Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com>

I'd really much rather we actually tested q35.

> ---
>  tests/qtest/device-plug-test.c | 20 +++++++++++++++++--
>  tests/qtest/drive_del-test.c   | 35 +++++++++++++++++++++++++++++-----
>  tests/qtest/hd-geo-test.c      |  4 ++--
>  tests/qtest/ivshmem-test.c     |  7 ++++++-
>  4 files changed, 56 insertions(+), 10 deletions(-)
> 
> diff --git a/tests/qtest/device-plug-test.c b/tests/qtest/device-plug-test.c
> index ad79bd4c14..404a92e132 100644
> --- a/tests/qtest/device-plug-test.c
> +++ b/tests/qtest/device-plug-test.c
> @@ -63,7 +63,15 @@ static void wait_device_deleted_event(QTestState *qtest, 
> const char *id)
>  
>  static void test_pci_unplug_request(void)
>  {
> -    QTestState *qtest = qtest_initf("-device virtio-mouse-pci,id=dev0");
> +    const char *arch = qtest_get_arch();
> +    const char *machine_addition = "";
> +
> +    if (strcmp(arch, "i386") == 0 || strcmp(arch, "x86_64") == 0) {
> +        machine_addition = "-machine pc";
> +    }
> +
> +    QTestState *qtest = qtest_initf("%s -device virtio-mouse-pci,id=dev0",
> +                                    machine_addition);
>  
>      /*
>       * Request device removal. As the guest is not running, the request won't
> @@ -79,8 +87,16 @@ static void test_pci_unplug_request(void)
>  
>  static void test_pci_unplug_json_request(void)
>  {
> +    const char *arch = qtest_get_arch();
> +    const char *machine_addition = "";
> +
> +    if (strcmp(arch, "i386") == 0 || strcmp(arch, "x86_64") == 0) {
> +        machine_addition = "-machine pc";
> +    }
> +
>      QTestState *qtest = qtest_initf(
> -        "-device '{\"driver\": \"virtio-mouse-pci\", \"id\": \"dev0\"}'");
> +        "%s -device '{\"driver\": \"virtio-mouse-pci\", \"id\": \"dev0\"}'",
> +        machine_addition);
>  
>      /*
>       * Request device removal. As the guest is not running, the request won't
> diff --git a/tests/qtest/drive_del-test.c b/tests/qtest/drive_del-test.c
> index 8d08ee9995..0cc18dfa4a 100644
> --- a/tests/qtest/drive_del-test.c
> +++ b/tests/qtest/drive_del-test.c
> @@ -235,14 +235,21 @@ static void test_drive_del_device_del(void)
>  static void test_cli_device_del(void)
>  {
>      QTestState *qts;
> +    const char *arch = qtest_get_arch();
> +    const char *machine_addition = "";
> +
> +    if (strcmp(arch, "i386") == 0 || strcmp(arch, "x86_64") == 0) {
> +        machine_addition = "-machine pc";
> +    }
>  
>      /*
>       * -drive/-device and device_del.  Start with a drive used by a
>       * device that unplugs after reset.
>       */
> -    qts = qtest_initf("-drive if=none,id=drive0,file=null-co://,"
> +    qts = qtest_initf("%s -drive if=none,id=drive0,file=null-co://,"
>                        "file.read-zeroes=on,format=raw"
>                        " -device virtio-blk-%s,drive=drive0,id=dev0",
> +                      machine_addition,
>                        qvirtio_get_dev_type());
>  
>      device_del(qts, true);
> @@ -266,13 +273,19 @@ static void test_empty_device_del(void)
>  static void test_device_add_and_del(void)
>  {
>      QTestState *qts;
> +    const char *arch = qtest_get_arch();
> +    const char *machine_addition = "";
> +
> +    if (strcmp(arch, "i386") == 0 || strcmp(arch, "x86_64") == 0) {
> +        machine_addition = "-machine pc";
> +    }
>  
>      /*
>       * -drive/device_add and device_del.  Start with a drive used by a
>       * device that unplugs after reset.
>       */
> -    qts = qtest_init("-drive if=none,id=drive0,file=null-co://,"
> -                     "file.read-zeroes=on,format=raw");
> +    qts = qtest_initf("%s -drive if=none,id=drive0,file=null-co://,"
> +                     "file.read-zeroes=on,format=raw", machine_addition);
>  
>      device_add(qts);
>      device_del(qts, true);
> @@ -284,8 +297,14 @@ static void test_device_add_and_del(void)
>  static void test_drive_add_device_add_and_del(void)
>  {
>      QTestState *qts;
> +    const char *arch = qtest_get_arch();
> +    const char *machine_addition = "";
> +
> +    if (strcmp(arch, "i386") == 0 || strcmp(arch, "x86_64") == 0) {
> +        machine_addition = "-machine pc";
> +    }
>  
> -    qts = qtest_init("");
> +    qts = qtest_init(machine_addition);
>  
>      /*
>       * drive_add/device_add and device_del.  The drive is used by a
> @@ -302,8 +321,14 @@ static void test_drive_add_device_add_and_del(void)
>  static void test_blockdev_add_device_add_and_del(void)
>  {
>      QTestState *qts;
> +    const char *arch = qtest_get_arch();
> +    const char *machine_addition = "";
> +
> +    if (strcmp(arch, "i386") == 0 || strcmp(arch, "x86_64") == 0) {
> +        machine_addition = "-machine pc";
> +    }
>  
> -    qts = qtest_init("");
> +    qts = qtest_init(machine_addition);
>  
>      /*
>       * blockdev_add/device_add and device_del.  The it drive is used by a
> diff --git a/tests/qtest/hd-geo-test.c b/tests/qtest/hd-geo-test.c
> index 3554b5d500..64023c0574 100644
> --- a/tests/qtest/hd-geo-test.c
> +++ b/tests/qtest/hd-geo-test.c
> @@ -839,7 +839,7 @@ static void test_override_scsi_hot_unplug(void)
>  
>      joined_args = g_strjoinv(" ", args->argv);
>  
> -    qts = qtest_init(joined_args);
> +    qts = qtest_initf("-machine pc %s", joined_args);
>      fw_cfg = pc_fw_cfg_init(qts);
>  
>      read_bootdevices(fw_cfg, expected);
> @@ -899,7 +899,7 @@ static void test_override_virtio_hot_unplug(void)
>  
>      joined_args = g_strjoinv(" ", args->argv);
>  
> -    qts = qtest_init(joined_args);
> +    qts = qtest_initf("-machine pc %s", joined_args);
>      fw_cfg = pc_fw_cfg_init(qts);
>  
>      read_bootdevices(fw_cfg, expected);
> diff --git a/tests/qtest/ivshmem-test.c b/tests/qtest/ivshmem-test.c
> index fe94dd3b96..4e8af42a9d 100644
> --- a/tests/qtest/ivshmem-test.c
> +++ b/tests/qtest/ivshmem-test.c
> @@ -385,7 +385,12 @@ static void test_ivshmem_hotplug(void)
>      QTestState *qts;
>      const char *arch = qtest_get_arch();
>  
> -    qts = qtest_init("-object memory-backend-ram,size=1M,id=mb1");
> +    if (strcmp(arch, "i386") == 0 || strcmp(arch, "x86_64") == 0) {
> +        qts = qtest_init("-object memory-backend-ram,size=1M,id=mb1"
> +                         " -machine pc");
> +    } else {
> +        qts = qtest_init("-object memory-backend-ram,size=1M,id=mb1");
> +    }
>  
>      qtest_qmp_device_add(qts, "ivshmem-plain", "iv1",
>                           "{'addr': %s, 'memdev': 'mb1'}",
> -- 
> 2.35.1




reply via email to

[Prev in Thread] Current Thread [Next in Thread]