qemu-devel
[Top][All Lists]
Advanced

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

[PATCH] x86: q35: require split irqchip for large CPU count


From: Igor Mammedov
Subject: [PATCH] x86: q35: require split irqchip for large CPU count
Date: Fri, 11 Mar 2022 09:39:01 -0500

if VM is started with:

   -enable-kvm -smp 256

without specifying 'split' irqchip, VM might eventually boot
but no more than 255 CPUs will be operational and following
error messages in guest could be observed:
   ...
   smpboot: native_cpu_up: bad cpu 256
   ...
It's a regression introduced by [1], which removed dependency
on intremap=on that were implicitly requiring 'split' irqchip
and forgot to check for 'split' irqchip.
Instead of letting VM boot a broken VM, error out and tell
user how to fix CLI.

Fixes: c1bb5418e ("target/i386: Support up to 32768 CPUs without IRQ remapping")
Fixes: https://bugzilla.redhat.com/show_bug.cgi?id=2060691
Signed-off-by: Igor Mammedov <imammedo@redhat.com>
---
 hw/i386/pc.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/hw/i386/pc.c b/hw/i386/pc.c
index fd55fc725c..a612df5241 100644
--- a/hw/i386/pc.c
+++ b/hw/i386/pc.c
@@ -743,9 +743,9 @@ void pc_machine_done(Notifier *notifier, void *data)
 
 
     if (x86ms->apic_id_limit > 255 && !xen_enabled() &&
-        !kvm_irqchip_in_kernel()) {
-        error_report("current -smp configuration requires kernel "
-                     "irqchip support.");
+        !kvm_irqchip_is_split()) {
+        error_report("current -smp configuration requires 'split' irqchip,"
+                     "ensure that '-machine kernel-irqchip=split' is used.");
         exit(EXIT_FAILURE);
     }
 }
-- 
2.31.1




reply via email to

[Prev in Thread] Current Thread [Next in Thread]