From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([209.51.188.92]:58440) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gvf8d-0002H1-5u for qemu-devel@nongnu.org; Mon, 18 Feb 2019 04:23:00 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1gvf8c-00038p-Av for qemu-devel@nongnu.org; Mon, 18 Feb 2019 04:22:59 -0500 From: David Hildenbrand Date: Mon, 18 Feb 2019 10:22:01 +0100 Message-Id: <20190218092202.26683-6-david@redhat.com> In-Reply-To: <20190218092202.26683-1-david@redhat.com> References: <20190218092202.26683-1-david@redhat.com> Subject: [Qemu-devel] [PATCH v3 5/6] tests/device-plug: Add CPU core unplug request test for spapr List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: qemu-s390x@nongnu.org, qemu-ppc@nongnu.org, Paolo Bonzini , Peter Crosthwaite , Richard Henderson , David Gibson , Thomas Huth , Laurent Vivier , Cornelia Huck , Collin Walling , Pierre Morel , "Michael S . Tsirkin" , Marcel Apfelbaum , Greg Kurz , Igor Mammedov , Eduardo Habkost , David Hildenbrand We can easily test this, just like PCI. On s390x, cpu unplug is not supported. On x86 ACPI, cpu unplug requires guest interaction to work, so it can't be tested that easily. We might add tests for ACPI later. Reviewed-by: Michael S. Tsirkin Reviewed-by: Greg Kurz Reviewed-by: Thomas Huth Signed-off-by: David Hildenbrand --- tests/device-plug-test.c | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/tests/device-plug-test.c b/tests/device-plug-test.c index d1a6c94af2..0262ad6be6 100644 --- a/tests/device-plug-test.c +++ b/tests/device-plug-test.c @@ -101,6 +101,21 @@ static void test_ccw_unplug(void) qtest_quit(qtest); } +static void test_spapr_cpu_unplug_request(void) +{ + QTestState *qtest; + + qtest = qtest_initf("-cpu power9_v2.0 -smp 1,maxcpus=2 " + "-device power9_v2.0-spapr-cpu-core,core-id=1,id=dev0"); + + /* similar to test_pci_unplug_request */ + device_del_request(qtest, "dev0"); + system_reset(qtest); + wait_device_deleted_event(qtest, "dev0"); + + qtest_quit(qtest); +} + int main(int argc, char **argv) { const char *arch = qtest_get_arch(); @@ -120,5 +135,10 @@ int main(int argc, char **argv) test_ccw_unplug); } + if (!strcmp(arch, "ppc64")) { + qtest_add_func("/device-plug/spapr-cpu-unplug-request", + test_spapr_cpu_unplug_request); + } + return g_test_run(); } -- 2.17.2