kvm: qemu: add qemu command line option -no-kvm-irqchip This option disables in-kernel irqchip (PIC/IOAPIC/LAPIC) and uses qemu interrupt controllers in userspace instead. Signed-off-by: Qing He <[EMAIL PROTECTED]> --- qemu/qemu-kvm.c | 4 ++++ qemu/vl.c | 5 +++++ qemu/vl.h | 1 + 3 files changed, 10 insertions(+), 0 deletions(-)
diff --git a/qemu/qemu-kvm.c b/qemu/qemu-kvm.c index a0e01e7..83cdcd4 100644 --- a/qemu/qemu-kvm.c +++ b/qemu/qemu-kvm.c @@ -9,6 +9,7 @@ #endif int kvm_allowed = KVM_ALLOWED_DEFAULT; +int kvm_irqchip = 1; #ifdef USE_KVM @@ -923,6 +924,9 @@ int kvm_qemu_create_context(void) { int i; + if (!kvm_irqchip) { + kvm_disable_irqchip_creation(kvm_context); + } if (kvm_create(kvm_context, phys_ram_size, (void**)&phys_ram_base) < 0) { kvm_qemu_destroy(); return -1; diff --git a/qemu/vl.c b/qemu/vl.c index 7150d48..cae52cf 100644 --- a/qemu/vl.c +++ b/qemu/vl.c @@ -6569,6 +6569,7 @@ enum { QEMU_OPTION_vnc, QEMU_OPTION_no_acpi, QEMU_OPTION_no_kvm, + QEMU_OPTION_no_kvm_irqchip, QEMU_OPTION_no_reboot, QEMU_OPTION_daemonize, QEMU_OPTION_option_rom, @@ -6638,6 +6639,7 @@ const QEMUOption qemu_options[] = { #endif #ifdef USE_KVM { "no-kvm", 0, QEMU_OPTION_no_kvm }, + { "no-kvm-irqchip", 0, QEMU_OPTION_no_kvm_irqchip }, #endif #if defined(TARGET_PPC) || defined(TARGET_SPARC) { "g", 1, QEMU_OPTION_g }, @@ -7347,6 +7349,9 @@ int main(int argc, char **argv) case QEMU_OPTION_no_kvm: kvm_allowed = 0; break; + case QEMU_OPTION_no_kvm_irqchip: + kvm_irqchip = 0; + break; #endif case QEMU_OPTION_usb: usb_enabled = 1; diff --git a/qemu/vl.h b/qemu/vl.h index 43f56bd..75289f8 100644 --- a/qemu/vl.h +++ b/qemu/vl.h @@ -163,6 +163,7 @@ extern int graphic_depth; extern const char *keyboard_layout; extern int kqemu_allowed; extern int kvm_allowed; +extern int kvm_irqchip; extern int win2k_install_hack; extern int usb_enabled; extern int smp_cpus;
kvm-qemu-option-no-irqchip-creation.patch
Description: kvm-qemu-option-no-irqchip-creation.patch
------------------------------------------------------------------------- This SF.net email is sponsored by: Splunk Inc. Still grepping through log files to find problems? Stop. Now Search log events and configuration files using AJAX and a browser. Download your FREE copy of Splunk now >> http://get.splunk.com/
_______________________________________________ kvm-devel mailing list kvm-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/kvm-devel