[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PULL 09/25] tests/qtest: failover: check missing guest feature
|
From: |
Thomas Huth |
|
Subject: |
[PULL 09/25] tests/qtest: failover: check missing guest feature |
|
Date: |
Mon, 21 Feb 2022 12:59:52 +0100 |
From: Laurent Vivier <lvivier@redhat.com>
If QEMU provides the VIRTIO_NET_F_STANDBY feature but the guest doesn't
the primary device must be kept hidden
Signed-off-by: Laurent Vivier <lvivier@redhat.com>
Message-Id: <20220203141537.972317-5-lvivier@redhat.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>
---
tests/qtest/virtio-net-failover.c | 33 +++++++++++++++++++++++++++++++
1 file changed, 33 insertions(+)
diff --git a/tests/qtest/virtio-net-failover.c
b/tests/qtest/virtio-net-failover.c
index 4236796368..cbd8585fa8 100644
--- a/tests/qtest/virtio-net-failover.c
+++ b/tests/qtest/virtio-net-failover.c
@@ -404,6 +404,38 @@ static void test_enabled(void)
machine_stop(qts);
}
+static void test_guest_off(void)
+{
+ QTestState *qts;
+ QVirtioPCIDevice *vdev;
+ uint64_t features;
+
+ qts = machine_start(BASE_MACHINE
+ "-netdev user,id=hs0 "
+ "-device virtio-net,bus=root0,id=standby0,"
+ "failover=on,netdev=hs0,mac="MAC_STANDBY0" "
+ "-netdev user,id=hs1 "
+ "-device virtio-net,bus=root1,id=primary0,"
+ "failover_pair_id=standby0,netdev=hs1,mac="MAC_PRIMARY0"
",
+ 2);
+
+ check_one_card(qts, true, "standby0", MAC_STANDBY0);
+ check_one_card(qts, false, "primary0", MAC_PRIMARY0);
+
+ features = ~(QVIRTIO_F_BAD_FEATURE |
+ (1ull << VIRTIO_RING_F_INDIRECT_DESC) |
+ (1ull << VIRTIO_RING_F_EVENT_IDX) |
+ (1ull << VIRTIO_NET_F_STANDBY));
+
+ vdev = start_virtio_net_internal(qts, 1, 0, &features);
+
+ check_one_card(qts, true, "standby0", MAC_STANDBY0);
+ check_one_card(qts, false, "primary0", MAC_PRIMARY0);
+
+ qos_object_destroy((QOSGraphObject *)vdev);
+ machine_stop(qts);
+}
+
static void test_hotplug_1(void)
{
QTestState *qts;
@@ -1351,6 +1383,7 @@ int main(int argc, char **argv)
test_on_mismatch);
qtest_add_func("failover-virtio-net/params/off", test_off);
qtest_add_func("failover-virtio-net/params/enabled", test_enabled);
+ qtest_add_func("failover-virtio-net/params/guest_off", test_guest_off);
/* hotplug tests */
qtest_add_func("failover-virtio-net/hotplug/1", test_hotplug_1);
--
2.27.0
- [PULL 02/25] tests/x86: Use 'pc' machine type for hotplug tests, (continued)
- [PULL 02/25] tests/x86: Use 'pc' machine type for hotplug tests, Thomas Huth, 2022/02/21
- [PULL 06/25] tests/qtest: failover: clean up pathname of tests, Thomas Huth, 2022/02/21
- [PULL 08/25] tests/qtest: failover: check the feature is correctly provided, Thomas Huth, 2022/02/21
- [PULL 07/25] tests/qtest: failover: use a macro for check_one_card(), Thomas Huth, 2022/02/21
- [PULL 04/25] tests/qtest/vhost-user-test.c: Use vhostforce=on, Thomas Huth, 2022/02/21
- [PULL 11/25] tests/qtest: failover: test migration if the guest doesn't support failover, Thomas Huth, 2022/02/21
- [PULL 12/25] tests/qtest: failover: migration abort test with failover off, Thomas Huth, 2022/02/21
- [PULL 14/25] hw/tpm: Clean includes, Thomas Huth, 2022/02/21
- [PULL 05/25] tests/qtest/ide-test: Remove bad retry_isa test, Thomas Huth, 2022/02/21
- [PULL 10/25] tests/qtest: failover: check migration with failover off, Thomas Huth, 2022/02/21
- [PULL 09/25] tests/qtest: failover: check missing guest feature,
Thomas Huth <=
- [PULL 13/25] scripts: Remove the old switch-timer-api script, Thomas Huth, 2022/02/21
- [PULL 19/25] core/ptimers: Remove unnecessary 'sysemu/cpus.h' include, Thomas Huth, 2022/02/21
- [PULL 16/25] hw/acpi/memory_hotplug: Remove unused 'hw/acpi/pc-hotplug.h' header, Thomas Huth, 2022/02/21
- [PULL 17/25] qtest: Add missing 'hw/qdev-core.h' include, Thomas Huth, 2022/02/21
- [PULL 15/25] hw/remote: Add missing include, Thomas Huth, 2022/02/21
- [PULL 21/25] linux-user: Add missing "qemu/timer.h" include, Thomas Huth, 2022/02/21
- [PULL 22/25] softmmu/runstate: Clean headers, Thomas Huth, 2022/02/21
- [PULL 24/25] hw/m68k/mcf: Add missing 'exec/hwaddr.h' header, Thomas Huth, 2022/02/21
- [PULL 18/25] exec/ramblock: Add missing includes, Thomas Huth, 2022/02/21
- [PULL 20/25] target: Add missing "qemu/timer.h" include, Thomas Huth, 2022/02/21