[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 17/22] kvm: Move irqchip event processing out of inn
From: |
Jan Kiszka |
Subject: |
[Qemu-devel] [PATCH 17/22] kvm: Move irqchip event processing out of inner loop |
Date: |
Thu, 27 Jan 2011 14:10:01 +0100 |
Align with qemu-kvm and prepare for IO exit fix: There is no need to run
kvm_arch_process_irqchip_events in the inner VCPU loop. Any state change
this service processes will first cause an exit from kvm_cpu_exec
anyway. And we will have to reenter the kernel on IO exits
unconditionally, something that the current logic prevents.
Signed-off-by: Jan Kiszka <address@hidden>
---
kvm-all.c | 11 ++++++-----
1 files changed, 6 insertions(+), 5 deletions(-)
diff --git a/kvm-all.c b/kvm-all.c
index 5bfa8c0..46ecc1c 100644
--- a/kvm-all.c
+++ b/kvm-all.c
@@ -892,6 +892,12 @@ int kvm_cpu_exec(CPUState *env)
DPRINTF("kvm_cpu_exec()\n");
+ if (kvm_arch_process_irqchip_events(env)) {
+ env->exit_request = 0;
+ env->exception_index = EXCP_HLT;
+ return 0;
+ }
+
do {
#ifndef CONFIG_IOTHREAD
if (env->exit_request) {
@@ -901,11 +907,6 @@ int kvm_cpu_exec(CPUState *env)
}
#endif
- if (kvm_arch_process_irqchip_events(env)) {
- ret = 0;
- break;
- }
-
if (env->kvm_vcpu_dirty) {
kvm_arch_put_registers(env, KVM_PUT_RUNTIME_STATE);
env->kvm_vcpu_dirty = 0;
--
1.7.1
- [Qemu-devel] Re: [PATCH 08/22] kvm: Provide sigbus services arch-independently, (continued)
- [Qemu-devel] [PATCH 09/22] Refactor signal setup functions in cpus.c, Jan Kiszka, 2011/01/27
- [Qemu-devel] [PATCH 12/22] kvm: Call qemu_kvm_eat_signals also under !CONFIG_IOTHREAD, Jan Kiszka, 2011/01/27
- [Qemu-devel] [PATCH 20/22] kvm: Leave kvm_cpu_exec directly after KVM_EXIT_SHUTDOWN, Jan Kiszka, 2011/01/27
- [Qemu-devel] [PATCH 22/22] Fix a few coding style violations in cpus.c, Jan Kiszka, 2011/01/27
- [Qemu-devel] [PATCH 17/22] kvm: Move irqchip event processing out of inner loop,
Jan Kiszka <=
- [Qemu-devel] Re: [PATCH 17/22] kvm: Move irqchip event processing out of inner loop, Avi Kivity, 2011/01/31
- [Qemu-devel] Re: [PATCH 17/22] kvm: Move irqchip event processing out of inner loop, Jan Kiszka, 2011/01/31
- [Qemu-devel] Re: [PATCH 17/22] kvm: Move irqchip event processing out of inner loop, Jan Kiszka, 2011/01/31
- [Qemu-devel] Re: [PATCH 17/22] kvm: Move irqchip event processing out of inner loop, Jan Kiszka, 2011/01/31
- [Qemu-devel] Re: [PATCH 17/22] kvm: Move irqchip event processing out of inner loop, Gleb Natapov, 2011/01/31
- [Qemu-devel] Re: [PATCH 17/22] kvm: Move irqchip event processing out of inner loop, Jan Kiszka, 2011/01/31
- [Qemu-devel] Re: [PATCH 17/22] kvm: Move irqchip event processing out of inner loop, Jan Kiszka, 2011/01/31
- [Qemu-devel] Re: [PATCH 17/22] kvm: Move irqchip event processing out of inner loop, Gleb Natapov, 2011/01/31
- [Qemu-devel] Re: [PATCH 17/22] kvm: Move irqchip event processing out of inner loop, Jan Kiszka, 2011/01/31
- [Qemu-devel] Re: [PATCH 17/22] kvm: Move irqchip event processing out of inner loop, Gleb Natapov, 2011/01/31