Message ID | 20190215133005.15955-6-david@redhat.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | tests: Add device unplug tests | expand |
On 15/02/2019 14.30, David Hildenbrand wrote: > We can easily test this, just like PCI. ... maybe add a sentence why this is only done for spapr, and not for s390x and x86 ? > Signed-off-by: David Hildenbrand <david@redhat.com> > --- > 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 6f7255552a..ec6cb5de7b 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); > +} My initial thought was: This should go into tests/cpu-plug-test.c instead ... but since you need the functions that you defined here, looks like this is the better place here... > 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", spapr-cpu-unplug-request ? > + test_spapr_cpu_unplug_request); > + } > + > return g_test_run(); > } Reviewed-by: Thomas Huth <thuth@redhat.com>
On Fri, 15 Feb 2019 14:30:04 +0100 David Hildenbrand <david@redhat.com> wrote: > We can easily test this, just like PCI. > > Signed-off-by: David Hildenbrand <david@redhat.com> > --- Reviewed-by: Greg Kurz <groug@kaod.org> > 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 6f7255552a..ec6cb5de7b 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(); > }
On 15.02.19 16:35, Thomas Huth wrote: > On 15/02/2019 14.30, David Hildenbrand wrote: >> We can easily test this, just like PCI. > > ... maybe add a sentence why this is only done for spapr, and not for > s390x and x86 ? Yes, will do! > >> Signed-off-by: David Hildenbrand <david@redhat.com> >> --- >> 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 6f7255552a..ec6cb5de7b 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); >> +} > > My initial thought was: This should go into tests/cpu-plug-test.c > instead ... but since you need the functions that you defined here, > looks like this is the better place here... Yes, I consider the tests in here to test basic unplug (+later plug) functionality for all kinds of devices. Very specific tests (e.g. testing different cpu plug combinations) should be handled in different files. Thanks!
diff --git a/tests/device-plug-test.c b/tests/device-plug-test.c index 6f7255552a..ec6cb5de7b 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(); }
We can easily test this, just like PCI. Signed-off-by: David Hildenbrand <david@redhat.com> --- tests/device-plug-test.c | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+)