[PATCH kvm-unit-tests] ioapic-split: fix hang, run with -smp 4

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



The test_ioapic_physical_destination_mode uses destination id 1, so it
cannot be run with only one processor.  Fixing that however shows that
the self-reconfiguration test is broken with split irqchip.  This should
be fixed in QEMU.

Signed-off-by: Paolo Bonzini <pbonzini@xxxxxxxxxx>
---
 x86/ioapic.c      | 3 ++-
 x86/unittests.cfg | 3 ++-
 2 files changed, 4 insertions(+), 2 deletions(-)

diff --git a/x86/ioapic.c b/x86/ioapic.c
index 3106531..ad0b47d 100644
--- a/x86/ioapic.c
+++ b/x86/ioapic.c
@@ -504,11 +504,12 @@ int main(void)
 	test_ioapic_level_tmr(true);
 	test_ioapic_edge_tmr(true);
 
-	test_ioapic_physical_destination_mode();
 	if (cpu_count() > 3)
 		test_ioapic_logical_destination_mode();
 
 	if (cpu_count() > 1) {
+		test_ioapic_physical_destination_mode();
+
 		test_ioapic_edge_tmr_smp(false);
 		test_ioapic_level_tmr_smp(false);
 		test_ioapic_level_tmr_smp(true);
diff --git a/x86/unittests.cfg b/x86/unittests.cfg
index d658bc8..a4df06b 100644
--- a/x86/unittests.cfg
+++ b/x86/unittests.cfg
@@ -33,7 +33,8 @@ arch = x86_64
 
 [ioapic-split]
 file = ioapic.flat
-extra_params = -cpu qemu64 -machine kernel_irqchip=split
+smp = 4
+extra_params = -cpu qemu64,+x2apic -machine kernel_irqchip=split
 arch = x86_64
 
 [apic]
-- 
2.24.1




[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]

  Powered by Linux