qemu-devel
[Top][All Lists]
Advanced

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

Re: [PATCH v3 2/5] tests/x86: Add 'q35' machine type to ivshmem-test


From: Denis V. Lunev
Subject: Re: [PATCH v3 2/5] tests/x86: Add 'q35' machine type to ivshmem-test
Date: Mon, 19 Sep 2022 15:13:07 +0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.11.0

On 9/15/22 15:14, Michael Labiuk wrote:
Configure pci bridge setting to test ivshmem on 'q35'.
< empty line here is needed
Signed-off-by: Michael Labiuk <michael.labiuk@virtuozzo.com>
---
  tests/qtest/ivshmem-test.c | 30 ++++++++++++++++++++++++++++++
  1 file changed, 30 insertions(+)

diff --git a/tests/qtest/ivshmem-test.c b/tests/qtest/ivshmem-test.c
index 9611d05eb5..0f9755abc6 100644
--- a/tests/qtest/ivshmem-test.c
+++ b/tests/qtest/ivshmem-test.c
@@ -378,6 +378,32 @@ static void test_ivshmem_server(void)
      close(thread.pipe[0]);
  }
+static void device_del(QTestState *qtest, const char *id)
+{
+    QDict *resp;
+
+    resp = qtest_qmp(qtest,
+                     "{'execute': 'device_del',"
+                     " 'arguments': { 'id': %s } }", id);
+
+    g_assert(qdict_haskey(resp, "return"));
+    qobject_unref(resp);
+}
hmmm, why do we need this helper if it is not used anywhere in next
and this patches?

it is also unclear to me why don't we do 'device_del' for other archs.
May be this is to be clarified in the patch description or worth
additional patch.

+
+static void test_ivshmem_hotplug_q35(void)
+{
+    QTestState *qts = qtest_init("-object memory-backend-ram,size=1M,id=mb1 "
+                                 "-device pcie-root-port,id=p1 "
+                                 "-device pcie-pci-bridge,bus=p1,id=b1 "
+                                 "-machine q35");
+
+    qtest_qmp_device_add(qts, "ivshmem-plain", "iv1",
+                         "{'memdev': 'mb1', 'bus': 'b1'}");
+    device_del(qts, "iv1");
+
+    qtest_quit(qts);
+}
+
  #define PCI_SLOT_HP             0x06
static void test_ivshmem_hotplug(void)
@@ -469,6 +495,7 @@ int main(int argc, char **argv)
  {
      int ret, fd;
      gchar dir[] = "/tmp/ivshmem-test.XXXXXX";
+    const char *arch = qtest_get_arch();
g_test_init(&argc, &argv, NULL); @@ -494,6 +521,9 @@ int main(int argc, char **argv)
          qtest_add_func("/ivshmem/pair", test_ivshmem_pair);
          qtest_add_func("/ivshmem/server", test_ivshmem_server);
      }
+    if (!strcmp(arch, "x86_64")) {
+        qtest_add_func("/ivshmem/hotplug-q35", test_ivshmem_hotplug_q35);
+    }
out:
      ret = g_test_run();




reply via email to

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