When matching capabilities of a guest, if multiple domain types exist (for example, 'qemu' and 'kvm') the order in which they are returned can change. To avoid unpredictable test results, this patch prefers kvm if that domain type exists. If not, the behavior matches what existed before, and the first domain type is returned. --- lib/Sys/Virt/TCK.pm | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/lib/Sys/Virt/TCK.pm b/lib/Sys/Virt/TCK.pm index b2c16e7..a3a2732 100644 --- a/lib/Sys/Virt/TCK.pm +++ b/lib/Sys/Virt/TCK.pm @@ -502,9 +502,12 @@ sub match_kernel { my @domains = $caps->guest_domain_types($i); next unless int(@domains); - return ($domains[0], - $caps->guest_domain_emulator($i, $domains[0]), - $caps->guest_domain_loader($i, $domains[0])); + # Prefer kvm if multiple domain types are returned + my $domain = (grep /^kvm$/, @domains) ? "kvm" : $domains[0]; + + return ($domain, + $caps->guest_domain_emulator($i, $domain), + $caps->guest_domain_loader($i, $domain)); } } -- 1.8.4.5 -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list