summary refs log tree commit diff stats
path: root/tests/qtest/virtio-net-failover.c (follow)
Commit message (Collapse)AuthorAgeFilesLines
* qapi: Move include/qapi/qmp/ to include/qobject/Daniel P. Berrangé2025-02-101-3/+3
| | | | | | | | | | | | | | | | | | | | | | The general expectation is that header files should follow the same file/path naming scheme as the corresponding source file. There are various historical exceptions to this practice in QEMU, with one of the most notable being the include/qapi/qmp/ directory. Most of the headers there correspond to source files in qobject/. This patch corrects most of that inconsistency by creating include/qobject/ and moving the headers for qobject/ there. This also fixes MAINTAINERS for include/qapi/qmp/dispatch.h: scripts/get_maintainer.pl now reports "QAPI" instead of "No maintainers found". Signed-off-by: Daniel P. Berrangé <berrange@redhat.com> Reviewed-by: Zhao Liu <zhao1.liu@intel.com> Acked-by: Halil Pasic <pasic@linux.ibm.com> #s390x Signed-off-by: Markus Armbruster <armbru@redhat.com> Message-ID: <20241118151235.2665921-2-armbru@redhat.com> [Rebased]
* tests/qtest: enhance migration channelsSteve Sistare2025-01-291-4/+4
| | | | | | | | | | | | Change the migrate_qmp and migrate_qmp_fail channels argument to a QObject type so the caller can manipulate the object before passing it to the helper. Define migrate_str_to_channel to aid such manipulation. Add a channels argument to migrate_incoming_qmp. Signed-off-by: Steve Sistare <steven.sistare@oracle.com> Reviewed-by: Peter Xu <peterx@redhat.com> Link: https://lore.kernel.org/r/1736967650-129648-22-git-send-email-steven.sistare@oracle.com Signed-off-by: Fabiano Rosas <farosas@suse.de>
* tests/qtest/migration: Rename migration-helpers.cFabiano Rosas2024-12-121-1/+1
| | | | | | | | | | Rename migration-helpers.c to migration-util.c to make its purpose more explicit and avoid the "helper" terminology. Move the file to the qtest/migration/ directory along with the rest of the migration files. Signed-off-by: Fabiano Rosas <farosas@suse.de>
* tests/qtest/migration: Move qmp helpers to a separate fileFabiano Rosas2024-12-121-0/+1
| | | | | | | | | | | | | | | | | We current have a bunch of non-test functions in migration-test.c and some others in migration-helpers.c. In order to split migration-test.c into separate test binaries, these helpers need to go somewhere else. To avoid making migration-helpers even larger, move all QMP-related functions into a new migration-qmp.c file and put it under the qtest/migration/ directory. The new file holds everything that has as its main responsibility to call into QMP. Reviewed-by: Peter Xu <peterx@redhat.com> Signed-off-by: Fabiano Rosas <farosas@suse.de>
* qtest: use correct boolean type for failover propertyDaniel P. Berrangé2024-01-111-18/+18
| | | | | | | | | | | | QMP device_add does not historically validate the parameter types. At some point it will likely change to enforce correct types, to match behaviour of -device. The failover property is expected to be a boolean in JSON. Signed-off-by: "Daniel P. Berrangé" <berrange@redhat.com> Message-ID: <20240103123005.2400437-1-berrange@redhat.com> Reviewed-by: Zhao Liu <zhao1.liu@intel.com> Signed-off-by: Thomas Huth <thuth@redhat.com>
* tests/qtest: migration: Use migrate_incoming_qmp where appropriateFabiano Rosas2023-10-111-68/+9
| | | | | | | | | | | Use the new migrate_incoming_qmp helper in the places that currently open-code calling migrate-incoming. Reviewed-by: Juan Quintela <quintela@redhat.com> Reviewed-by: Peter Xu <peterx@redhat.com> Signed-off-by: Fabiano Rosas <farosas@suse.de> Signed-off-by: Juan Quintela <quintela@redhat.com> Message-ID: <20230712190742.22294-4-farosas@suse.de>
* tests/qtest: virtio-net-failover: Disable migration tests for win32Xuzhou Cheng2022-09-271-1/+8
| | | | | | | | | | | These tests use the exec migration protocol, which is unsupported on Windows as of today. Disable these tests for now. Signed-off-by: Xuzhou Cheng <xuzhou.cheng@windriver.com> Signed-off-by: Bin Meng <bin.meng@windriver.com> Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com> Message-Id: <20220925113032.1949844-42-bmeng.cn@gmail.com> Signed-off-by: Thomas Huth <thuth@redhat.com>
* tests: move libqtest.h back under qtest/Marc-André Lureau2022-05-031-1/+1
| | | | | | | | | | | Since commit a2ce7dbd917 ("meson: convert tests/qtest to meson"), libqtest.h is under libqos/ directory, while libqtest.c is still in qtest/. Move back to its original location to avoid mixing with libqos/. Suggested-by: Thomas Huth <thuth@redhat.com> Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com> Reviewed-by: Thomas Huth <thuth@redhat.com> Reviewed-by: Stefan Berger <stefanb@linux.ibm.com>
* tests/qtest: failover: fix infinite loopLaurent Vivier2022-03-291-4/+25
| | | | | | | | | | | | | | If the migration is over before we cancel it, we are waiting in a loop a state that never comes because the state is already "completed". To avoid an infinite loop, skip the test if the migration is "completed" before we were able to cancel it. Signed-off-by: Laurent Vivier <lvivier@redhat.com> Acked-by: Thomas Huth <thuth@redhat.com> Message-id: 20220329124259.355995-1-lvivier@redhat.com Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
* tests/qtest: failover: migration abort test with failover offLaurent Vivier2022-02-211-0/+180
| | | | | | | | | Test abort during active migration when failover is disabled from QEMU or from guest side. Signed-off-by: Laurent Vivier <lvivier@redhat.com> Message-Id: <20220203141537.972317-8-lvivier@redhat.com> Signed-off-by: Thomas Huth <thuth@redhat.com>
* tests/qtest: failover: test migration if the guest doesn't support failoverLaurent Vivier2022-02-211-0/+142
| | | | | | | | | The primary device is not plugged and the migration is done only with the standby device Signed-off-by: Laurent Vivier <lvivier@redhat.com> Message-Id: <20220203141537.972317-7-lvivier@redhat.com> Signed-off-by: Thomas Huth <thuth@redhat.com>
* tests/qtest: failover: check migration with failover offLaurent Vivier2022-02-211-0/+133
| | | | | | | | | | | If failover is off, the primary device is not plugged and the migration is done only with the standby device. On destination, the primary device must not be plugged. Signed-off-by: Laurent Vivier <lvivier@redhat.com> Message-Id: <20220203141537.972317-6-lvivier@redhat.com> Signed-off-by: Thomas Huth <thuth@redhat.com>
* tests/qtest: failover: check missing guest featureLaurent Vivier2022-02-211-0/+33
| | | | | | | | | 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: failover: check the feature is correctly providedLaurent Vivier2022-02-211-53/+86
| | | | | | | | | Check QEMU provides the VIRTIO_NET_F_STANDBY if failover is on, and doesn't if failover is off Signed-off-by: Laurent Vivier <lvivier@redhat.com> Message-Id: <20220203141537.972317-4-lvivier@redhat.com> Signed-off-by: Thomas Huth <thuth@redhat.com>
* tests/qtest: failover: use a macro for check_one_card()Laurent Vivier2022-02-211-26/+21
| | | | | | | | | This allows g_assert() to correctly report the line number of the error in the test case. Signed-off-by: Laurent Vivier <lvivier@redhat.com> Message-Id: <20220203141537.972317-3-lvivier@redhat.com> Signed-off-by: Thomas Huth <thuth@redhat.com>
* tests/qtest: failover: clean up pathname of testsLaurent Vivier2022-02-211-8/+13
| | | | | | | | clearly indentify parameters, hotplug and migration tests Signed-off-by: Laurent Vivier <lvivier@redhat.com> Message-Id: <20220203141537.972317-2-lvivier@redhat.com> Signed-off-by: Thomas Huth <thuth@redhat.com>
* tests/qtest/virtio-net-failover: Use g_file_open_tmp() to create temporary fileThomas Huth2021-12-221-3/+5
| | | | | | | | | | | | | g_test_rand_int() must not be called before g_test_init(), otherwise the glib will show a "g_rand_int: assertion 'rand != NULL' failed" message in the log. So we could change the order here, but actually, it's safer to use g_file_open_tmp() anyway, so let's use that function now instead. Reported-by: Philippe Mathieu-Daudé <philmd@redhat.com> Suggested-by: Richard Henderson <richard.henderson@linaro.org> Message-Id: <20211222083652.776592-1-thuth@redhat.com> Signed-off-by: Thomas Huth <thuth@redhat.com>
* tests/libqtest: add a migration test with two couples of failover devicesLaurent Vivier2021-12-151-0/+282
| | | | | | | Signed-off-by: Laurent Vivier <lvivier@redhat.com> Acked-by: Thomas Huth <thuth@redhat.com> Message-Id: <20211208130350.10178-5-lvivier@redhat.com> Signed-off-by: Thomas Huth <thuth@redhat.com>
* tests/libqtest: add some virtio-net failover migration cancelling testsLaurent Vivier2021-12-151-0/+282
| | | | | | | | | | Add some tests to check the state of the machine if the migration is cancelled while we are using virtio-net failover. Signed-off-by: Laurent Vivier <lvivier@redhat.com> Acked-by: Thomas Huth <thuth@redhat.com> Message-Id: <20211208130350.10178-4-lvivier@redhat.com> Signed-off-by: Thomas Huth <thuth@redhat.com>
* tests/qtest: add some tests for virtio-net failoverLaurent Vivier2021-12-151-0/+788
Add test cases to test several error cases that must be generated by invalid failover configuration. Add a combination of coldplug and hotplug test cases to be sure the primary is correctly managed according the presence or not of the STANDBY feature. Signed-off-by: Laurent Vivier <lvivier@redhat.com> Message-Id: <20211208130350.10178-3-lvivier@redhat.com> Signed-off-by: Thomas Huth <thuth@redhat.com>