On 07/27/2018 09:54 AM, Greg Kurz wrote: > On Fri, 27 Jul 2018 15:27:24 +1000 > David Gibson <da...@gibson.dropbear.id.au> wrote: > >> On Wed, Jul 25, 2018 at 04:45:26PM +0200, Greg Kurz wrote: >>> Commit b585395b655 fixed a regression introduced by some recent changes >>> in the XICS code, that was causing QEMU to crash instantly during CPU >>> hotplug with KVM. This is typically the kind of bug we'd like our >>> test suite to detect before it gets merged. Unfortunately, the current >>> tests run with '-machine accel=qtest' and don't exercise KVM specific >>> paths in QEMU. >>> >>> This patch hence changes add_pseries_test_case() to launch QEMU with >>> '-machine accel=kvm' if KVM is available. >>> >>> A notable consequence is that the guest will execute SLOF, but for some >>> reasons SLOF sometimes hits a program exception. This causes the guest >>> to loop forever and the test to be stuck. Since we don't need the guest >>> to be truely running, let's pass -S to QEMU to avoid that. >>> >>> Also disable machine capabilities that could be unavailable in KVM, eg, >>> when using PR KVM. >>> >>> Signed-off-by: Greg Kurz <gr...@kaod.org> >> >> I'm pretty sure trying to change the accelerator on a qtest test just >> doesn't make sense. We'd need a different approach for testing cpu >> hotplug against kvm & tcg backends. >> > > The test starts QEMU, triggers the CPU hotplug code with a QMP command > and checks the command didn't fail (or QEMU didn't crash, as it would > have before commit b585395b655a)... I really don't understand what > is wrong with that... Please elaborate.
For a "real" test, I think you'd need a guest OS that is reacting to the hot plug events. So maybe this should rather be done in the avocado framework instead? Thomas