79 lines
2.9 KiB
Diff
79 lines
2.9 KiB
Diff
|
From 40e52779c8876bc453e5d23e6b36e6f0d7302fa4 Mon Sep 17 00:00:00 2001
|
||
|
From: Xiao Wang <jasowang@redhat.com>
|
||
|
Date: Fri, 11 Jan 2019 07:59:02 +0000
|
||
|
Subject: [PATCH 07/11] virtio-net-test: accept variable length argument in
|
||
|
pci_test_start()
|
||
|
MIME-Version: 1.0
|
||
|
Content-Type: text/plain; charset=UTF-8
|
||
|
Content-Transfer-Encoding: 8bit
|
||
|
|
||
|
RH-Author: Xiao Wang <jasowang@redhat.com>
|
||
|
Message-id: <20190111075904.2030-8-jasowang@redhat.com>
|
||
|
Patchwork-id: 83981
|
||
|
O-Subject: [RHEL8 qemu-kvm PATCH 7/9] virtio-net-test: accept variable length argument in pci_test_start()
|
||
|
Bugzilla: 1636784
|
||
|
RH-Acked-by: Thomas Huth <thuth@redhat.com>
|
||
|
RH-Acked-by: Philippe Mathieu-Daudé <philmd@redhat.com>
|
||
|
RH-Acked-by: Jens Freimann <jfreimann@redhat.com>
|
||
|
RH-Acked-by: Maxime Coquelin <maxime.coquelin@redhat.com>
|
||
|
RH-Acked-by: Michael S. Tsirkin <mst@redhat.com>
|
||
|
|
||
|
This allows flexibility to be reused for all kinds of command line
|
||
|
used by other tests.
|
||
|
|
||
|
Reviewed-by: Eric Blake <eblake@redhat.com>
|
||
|
Reviewed-by: Thomas Huth <thuth@redhat.com>
|
||
|
Signed-off-by: Jason Wang <jasowang@redhat.com>
|
||
|
Message-id: 20181204035347.6148-4-jasowang@redhat.com
|
||
|
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
|
||
|
(cherry picked from commit ae4c445c6f38a01504b7040b1e01a69945137b0c)
|
||
|
Signed-off-by: Danilo C. L. de Paula <ddepaula@redhat.com>
|
||
|
---
|
||
|
tests/virtio-net-test.c | 17 +++++++++++------
|
||
|
1 file changed, 11 insertions(+), 6 deletions(-)
|
||
|
|
||
|
diff --git a/tests/virtio-net-test.c b/tests/virtio-net-test.c
|
||
|
index b285a26..ad6968c 100644
|
||
|
--- a/tests/virtio-net-test.c
|
||
|
+++ b/tests/virtio-net-test.c
|
||
|
@@ -52,17 +52,21 @@ static QVirtioPCIDevice *virtio_net_pci_init(QPCIBus *bus, int slot)
|
||
|
return dev;
|
||
|
}
|
||
|
|
||
|
-static QOSState *pci_test_start(int socket)
|
||
|
+GCC_FMT_ATTR(1, 2)
|
||
|
+static QOSState *pci_test_start(const char *cmd, ...)
|
||
|
{
|
||
|
QOSState *qs;
|
||
|
+ va_list ap;
|
||
|
const char *arch = qtest_get_arch();
|
||
|
- const char *cmd = "-netdev socket,fd=%d,id=hs0 -device "
|
||
|
- "virtio-net-pci,netdev=hs0";
|
||
|
|
||
|
if (strcmp(arch, "i386") == 0 || strcmp(arch, "x86_64") == 0) {
|
||
|
- qs = qtest_pc_boot(cmd, socket);
|
||
|
+ va_start(ap, cmd);
|
||
|
+ qs = qtest_pc_vboot(cmd, ap);
|
||
|
+ va_end(ap);
|
||
|
} else if (strcmp(arch, "ppc64") == 0) {
|
||
|
- qs = qtest_spapr_boot(cmd, socket);
|
||
|
+ va_start(ap, cmd);
|
||
|
+ qs = qtest_spapr_vboot(cmd, ap);
|
||
|
+ va_end(ap);
|
||
|
} else {
|
||
|
g_printerr("virtio-net tests are only available on x86 or ppc64\n");
|
||
|
exit(EXIT_FAILURE);
|
||
|
@@ -223,7 +227,8 @@ static void pci_basic(gconstpointer data)
|
||
|
ret = socketpair(PF_UNIX, SOCK_STREAM, 0, sv);
|
||
|
g_assert_cmpint(ret, !=, -1);
|
||
|
|
||
|
- qs = pci_test_start(sv[1]);
|
||
|
+ qs = pci_test_start("-netdev socket,fd=%d,id=hs0 -device "
|
||
|
+ "virtio-net-pci,netdev=hs0", sv[1]);
|
||
|
dev = virtio_net_pci_init(qs->pcibus, PCI_SLOT);
|
||
|
|
||
|
rx = (QVirtQueuePCI *)qvirtqueue_setup(&dev->vdev, qs->alloc, 0);
|
||
|
--
|
||
|
1.8.3.1
|
||
|
|