public inbox for kvm@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/8] Small cpu loop cleanups
@ 2009-06-15 13:23 Gleb Natapov
  2009-06-15 13:23 ` [PATCH 1/8] env->kvm_cpu_state.init is always zero here Gleb Natapov
                   ` (8 more replies)
  0 siblings, 9 replies; 10+ messages in thread
From: Gleb Natapov @ 2009-06-15 13:23 UTC (permalink / raw)
  To: avi; +Cc: kvm

Also fix "info cpus" to show correct halt status with in kernel irq chip.

I removed patch that uses on_vcpu() for init/sipi handling for now.

Gleb Natapov (8):
  env->kvm_cpu_state.init is always zero here.
  Do not use env->halted to decide where halted state should be
    handled.
  Call kvm_arch_load_regs() instead of kvm_load_registers()
  Rename kvm_(load|save)_mpstate to kvm_arch_(load|save)_mpstate
  Retrieve mp state info in cpu_synchronize_state()
  env->exception_index is not used by kvm code.
  s->cpu_env cannot be zero here.
  env->exit_request is not used by kvm.

 hw/apic.c             |    6 ++----
 qemu-kvm-ia64.c       |    6 ++----
 qemu-kvm-x86.c        |    9 +++------
 qemu-kvm.c            |   39 +++++++++++++++++++++++++++++++--------
 qemu-kvm.h            |    4 ++++
 target-i386/machine.c |    6 +++---
 target-ia64/machine.c |    4 ++--
 vl.c                  |    1 -
 8 files changed, 47 insertions(+), 28 deletions(-)


^ permalink raw reply	[flat|nested] 10+ messages in thread

* [PATCH 1/8] env->kvm_cpu_state.init is always zero here.
  2009-06-15 13:23 [PATCH 0/8] Small cpu loop cleanups Gleb Natapov
@ 2009-06-15 13:23 ` Gleb Natapov
  2009-06-15 13:23 ` [PATCH 2/8] Do not use env->halted to decide where halted state should be handled Gleb Natapov
                   ` (7 subsequent siblings)
  8 siblings, 0 replies; 10+ messages in thread
From: Gleb Natapov @ 2009-06-15 13:23 UTC (permalink / raw)
  To: avi; +Cc: kvm


Signed-off-by: Gleb Natapov <gleb@redhat.com>
---
 qemu-kvm.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/qemu-kvm.c b/qemu-kvm.c
index 2aeb17c..ec911ef 100644
--- a/qemu-kvm.c
+++ b/qemu-kvm.c
@@ -412,7 +412,7 @@ static int kvm_main_loop_cpu(CPUState *env)
 	    if (env->kvm_cpu_state.sipi_needed)
 	        update_regs_for_sipi(env);
     }
-	if (!env->halted && !env->kvm_cpu_state.init)
+	if (!env->halted)
 	    kvm_cpu_exec(env);
 	env->exit_request = 0;
         env->exception_index = EXCP_INTERRUPT;
-- 
1.6.2.1


^ permalink raw reply related	[flat|nested] 10+ messages in thread

* [PATCH 2/8] Do not use env->halted to decide where halted state should be handled.
  2009-06-15 13:23 [PATCH 0/8] Small cpu loop cleanups Gleb Natapov
  2009-06-15 13:23 ` [PATCH 1/8] env->kvm_cpu_state.init is always zero here Gleb Natapov
@ 2009-06-15 13:23 ` Gleb Natapov
  2009-06-15 13:23 ` [PATCH 3/8] Call kvm_arch_load_regs() instead of kvm_load_registers() Gleb Natapov
                   ` (6 subsequent siblings)
  8 siblings, 0 replies; 10+ messages in thread
From: Gleb Natapov @ 2009-06-15 13:23 UTC (permalink / raw)
  To: avi; +Cc: kvm

Use kvm_irqchip_in_kernel() for that. If irq chip is not handled by
userspace kernel should be entered even when CPU is halted.

Signed-off-by: Gleb Natapov <gleb@redhat.com>
---
 hw/apic.c  |    3 +--
 qemu-kvm.c |    6 +++---
 2 files changed, 4 insertions(+), 5 deletions(-)

diff --git a/hw/apic.c b/hw/apic.c
index c5d97b2..f186202 100644
--- a/hw/apic.c
+++ b/hw/apic.c
@@ -467,8 +467,7 @@ static void apic_init_ipi(APICState *s)
 
     cpu_reset(s->cpu_env);
 
-    if (!(s->apicbase & MSR_IA32_APICBASE_BSP) &&
-        (!kvm_enabled() || !qemu_kvm_irqchip_in_kernel()))
+    if (!(s->apicbase & MSR_IA32_APICBASE_BSP))
         s->cpu_env->halted = 1;
 
     if (kvm_enabled() && !qemu_kvm_irqchip_in_kernel())
diff --git a/qemu-kvm.c b/qemu-kvm.c
index ec911ef..7676e02 100644
--- a/qemu-kvm.c
+++ b/qemu-kvm.c
@@ -217,6 +217,8 @@ static int has_work(CPUState *env)
 {
     if (!vm_running || (env && env->kvm_cpu_state.stopped))
 	return 0;
+    if (kvm_irqchip_in_kernel(kvm_context))
+        return 1;
     if (!env->halted)
 	return 1;
     return kvm_arch_has_work(env);
@@ -390,8 +392,6 @@ static int kvm_main_loop_cpu(CPUState *env)
     setup_kernel_sigmask(env);
 
     pthread_mutex_lock(&qemu_mutex);
-    if (kvm_irqchip_in_kernel(kvm_context))
-	env->halted = 0;
 
     kvm_qemu_init_env(env);
 #ifdef TARGET_I386
@@ -412,7 +412,7 @@ static int kvm_main_loop_cpu(CPUState *env)
 	    if (env->kvm_cpu_state.sipi_needed)
 	        update_regs_for_sipi(env);
     }
-	if (!env->halted)
+	if (!env->halted || kvm_irqchip_in_kernel(kvm_context))
 	    kvm_cpu_exec(env);
 	env->exit_request = 0;
         env->exception_index = EXCP_INTERRUPT;
-- 
1.6.2.1


^ permalink raw reply related	[flat|nested] 10+ messages in thread

* [PATCH 3/8] Call kvm_arch_load_regs() instead of kvm_load_registers()
  2009-06-15 13:23 [PATCH 0/8] Small cpu loop cleanups Gleb Natapov
  2009-06-15 13:23 ` [PATCH 1/8] env->kvm_cpu_state.init is always zero here Gleb Natapov
  2009-06-15 13:23 ` [PATCH 2/8] Do not use env->halted to decide where halted state should be handled Gleb Natapov
@ 2009-06-15 13:23 ` Gleb Natapov
  2009-06-15 13:23 ` [PATCH 4/8] Rename kvm_(load|save)_mpstate to kvm_arch_(load|save)_mpstate Gleb Natapov
                   ` (5 subsequent siblings)
  8 siblings, 0 replies; 10+ messages in thread
From: Gleb Natapov @ 2009-06-15 13:23 UTC (permalink / raw)
  To: avi; +Cc: kvm

The call is done from vcpu thread.

Signed-off-by: Gleb Natapov <gleb@redhat.com>
---
 qemu-kvm.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/qemu-kvm.c b/qemu-kvm.c
index 7676e02..5fa7154 100644
--- a/qemu-kvm.c
+++ b/qemu-kvm.c
@@ -399,7 +399,7 @@ static int kvm_main_loop_cpu(CPUState *env)
 #endif
 
     cpu_single_env = env;
-    kvm_load_registers(env);
+    kvm_arch_load_regs(env);
 
     while (1) {
 	while (!has_work(env))
-- 
1.6.2.1


^ permalink raw reply related	[flat|nested] 10+ messages in thread

* [PATCH 4/8] Rename kvm_(load|save)_mpstate to kvm_arch_(load|save)_mpstate
  2009-06-15 13:23 [PATCH 0/8] Small cpu loop cleanups Gleb Natapov
                   ` (2 preceding siblings ...)
  2009-06-15 13:23 ` [PATCH 3/8] Call kvm_arch_load_regs() instead of kvm_load_registers() Gleb Natapov
@ 2009-06-15 13:23 ` Gleb Natapov
  2009-06-15 13:23 ` [PATCH 5/8] Retrieve mp state info in cpu_synchronize_state() Gleb Natapov
                   ` (4 subsequent siblings)
  8 siblings, 0 replies; 10+ messages in thread
From: Gleb Natapov @ 2009-06-15 13:23 UTC (permalink / raw)
  To: avi; +Cc: kvm

To be consistent with other function naming.

Signed-off-by: Gleb Natapov <gleb@redhat.com>
---
 qemu-kvm-ia64.c       |    4 ++--
 qemu-kvm-x86.c        |    4 ++--
 qemu-kvm.h            |    2 ++
 target-i386/machine.c |    6 +++---
 target-ia64/machine.c |    4 ++--
 5 files changed, 11 insertions(+), 9 deletions(-)

diff --git a/qemu-kvm-ia64.c b/qemu-kvm-ia64.c
index d33c1c3..234602c 100644
--- a/qemu-kvm-ia64.c
+++ b/qemu-kvm-ia64.c
@@ -98,7 +98,7 @@ void kvm_arch_update_guest_debug(CPUState *env, struct kvm_guest_debug *dbg)
 {
 }
 
-void kvm_save_mpstate(CPUState *env)
+void kvm_arch_save_mpstate(CPUState *env)
 {
 #ifdef KVM_CAP_MP_STATE
     int r;
@@ -112,7 +112,7 @@ void kvm_save_mpstate(CPUState *env)
 #endif
 }
 
-void kvm_load_mpstate(CPUState *env)
+void kvm_arch_load_mpstate(CPUState *env)
 {
 #ifdef KVM_CAP_MP_STATE
     struct kvm_mp_state mp_state = { .mp_state = env->mp_state };
diff --git a/qemu-kvm-x86.c b/qemu-kvm-x86.c
index 729d600..8e6fb75 100644
--- a/qemu-kvm-x86.c
+++ b/qemu-kvm-x86.c
@@ -295,7 +295,7 @@ void kvm_load_tsc(CPUState *env)
         perror("kvm_set_tsc FAILED.\n");
 }
 
-void kvm_save_mpstate(CPUState *env)
+void kvm_arch_save_mpstate(CPUState *env)
 {
 #ifdef KVM_CAP_MP_STATE
     int r;
@@ -309,7 +309,7 @@ void kvm_save_mpstate(CPUState *env)
 #endif
 }
 
-void kvm_load_mpstate(CPUState *env)
+void kvm_arch_load_mpstate(CPUState *env)
 {
 #ifdef KVM_CAP_MP_STATE
     struct kvm_mp_state mp_state = { .mp_state = env->mp_state };
diff --git a/qemu-kvm.h b/qemu-kvm.h
index fa40542..3b73fe9 100644
--- a/qemu-kvm.h
+++ b/qemu-kvm.h
@@ -69,6 +69,8 @@ int kvm_arch_qemu_create_context(void);
 
 void kvm_arch_save_regs(CPUState *env);
 void kvm_arch_load_regs(CPUState *env);
+void kvm_arch_load_mpstate(CPUState *env);
+void kvm_arch_save_mpstate(CPUState *env);
 int kvm_arch_qemu_init_env(CPUState *cenv);
 void kvm_arch_pre_kvm_run(void *opaque, CPUState *env);
 void kvm_arch_post_kvm_run(void *opaque, CPUState *env);
diff --git a/target-i386/machine.c b/target-i386/machine.c
index 07df1e1..14942c0 100644
--- a/target-i386/machine.c
+++ b/target-i386/machine.c
@@ -34,7 +34,7 @@ void cpu_save(QEMUFile *f, void *opaque)
 
     if (kvm_enabled()) {
         kvm_save_registers(env);
-        kvm_save_mpstate(env);
+        kvm_arch_save_mpstate(env);
     }
 
     for(i = 0; i < CPU_NB_REGS; i++)
@@ -369,12 +369,12 @@ int cpu_load(QEMUFile *f, void *opaque, int version_id)
             kvm_load_tsc(env);
             if (version_id >= 5) {
                 qemu_get_be32s(f, &env->mp_state);
-                kvm_load_mpstate(env);
+                kvm_arch_load_mpstate(env);
             }
         } else {
             kvm_load_registers(env);
             kvm_load_tsc(env);
-            kvm_load_mpstate(env);
+            kvm_arch_load_mpstate(env);
         }
     }
     return 0;
diff --git a/target-ia64/machine.c b/target-ia64/machine.c
index dd205c5..70ef379 100644
--- a/target-ia64/machine.c
+++ b/target-ia64/machine.c
@@ -10,7 +10,7 @@ void cpu_save(QEMUFile *f, void *opaque)
 
     if (kvm_enabled()) {
         kvm_save_registers(env);
-        kvm_save_mpstate(env);
+        kvm_arch_save_mpstate(env);
     }
 }
 
@@ -20,7 +20,7 @@ int cpu_load(QEMUFile *f, void *opaque, int version_id)
 
     if (kvm_enabled()) {
         kvm_load_registers(env);
-        kvm_load_mpstate(env);
+        kvm_arch_load_mpstate(env);
     }
     return 0;
 }
-- 
1.6.2.1


^ permalink raw reply related	[flat|nested] 10+ messages in thread

* [PATCH 5/8] Retrieve mp state info in cpu_synchronize_state()
  2009-06-15 13:23 [PATCH 0/8] Small cpu loop cleanups Gleb Natapov
                   ` (3 preceding siblings ...)
  2009-06-15 13:23 ` [PATCH 4/8] Rename kvm_(load|save)_mpstate to kvm_arch_(load|save)_mpstate Gleb Natapov
@ 2009-06-15 13:23 ` Gleb Natapov
  2009-06-15 13:23 ` [PATCH 6/8] env->exception_index is not used by kvm code Gleb Natapov
                   ` (3 subsequent siblings)
  8 siblings, 0 replies; 10+ messages in thread
From: Gleb Natapov @ 2009-06-15 13:23 UTC (permalink / raw)
  To: avi; +Cc: kvm

And set env->halted based on the value to show accurate vcpu state in
QEMU monitor.

Signed-off-by: Gleb Natapov <gleb@redhat.com>
---
 qemu-kvm.c |   27 +++++++++++++++++++++++++++
 qemu-kvm.h |    2 ++
 2 files changed, 29 insertions(+), 0 deletions(-)

diff --git a/qemu-kvm.c b/qemu-kvm.c
index 5fa7154..3ae4b45 100644
--- a/qemu-kvm.c
+++ b/qemu-kvm.c
@@ -200,6 +200,33 @@ void kvm_save_registers(CPUState *env)
         on_vcpu(env, kvm_do_save_registers, env);
 }
 
+static void kvm_do_load_mpstate(void *_env)
+{
+    CPUState *env = _env;
+
+    kvm_arch_load_mpstate(env);
+}
+
+void kvm_load_mpstate(CPUState *env)
+{
+    if (kvm_enabled() && qemu_system_ready)
+        on_vcpu(env, kvm_do_load_mpstate, env);
+}
+
+static void kvm_do_save_mpstate(void *_env)
+{
+    CPUState *env = _env;
+
+    kvm_arch_save_mpstate(env);
+    env->halted = (env->mp_state == KVM_MP_STATE_HALTED);
+}
+
+void kvm_save_mpstate(CPUState *env)
+{
+    if (kvm_enabled())
+        on_vcpu(env, kvm_do_save_mpstate, env);
+}
+
 int kvm_cpu_exec(CPUState *env)
 {
     int r;
diff --git a/qemu-kvm.h b/qemu-kvm.h
index 3b73fe9..22452e9 100644
--- a/qemu-kvm.h
+++ b/qemu-kvm.h
@@ -221,11 +221,13 @@ static inline int kvm_sync_vcpus(void) { return 0; }
 static inline void kvm_arch_get_registers(CPUState *env)
 {
     kvm_save_registers(env);
+    kvm_save_mpstate(env);
 }
 
 static inline void kvm_arch_put_registers(CPUState *env)
 {
     kvm_load_registers(env);
+    kvm_load_mpstate(env);
 }
 
 static inline void cpu_synchronize_state(CPUState *env, int modified)
-- 
1.6.2.1


^ permalink raw reply related	[flat|nested] 10+ messages in thread

* [PATCH 6/8] env->exception_index is not used by kvm code.
  2009-06-15 13:23 [PATCH 0/8] Small cpu loop cleanups Gleb Natapov
                   ` (4 preceding siblings ...)
  2009-06-15 13:23 ` [PATCH 5/8] Retrieve mp state info in cpu_synchronize_state() Gleb Natapov
@ 2009-06-15 13:23 ` Gleb Natapov
  2009-06-15 13:23 ` [PATCH 7/8] s->cpu_env cannot be zero here Gleb Natapov
                   ` (2 subsequent siblings)
  8 siblings, 0 replies; 10+ messages in thread
From: Gleb Natapov @ 2009-06-15 13:23 UTC (permalink / raw)
  To: avi; +Cc: kvm


Signed-off-by: Gleb Natapov <gleb@redhat.com>
---
 qemu-kvm-ia64.c |    2 --
 qemu-kvm-x86.c  |    2 --
 qemu-kvm.c      |    1 -
 3 files changed, 0 insertions(+), 5 deletions(-)

diff --git a/qemu-kvm-ia64.c b/qemu-kvm-ia64.c
index 234602c..477d24c 100644
--- a/qemu-kvm-ia64.c
+++ b/qemu-kvm-ia64.c
@@ -35,7 +35,6 @@ int kvm_arch_halt(void *opaque, kvm_vcpu_context_t vcpu)
 {
     CPUState *env = cpu_single_env;
     env->hflags |= HF_HALTED_MASK;
-    env->exception_index = EXCP_HLT;
     return 1;
 }
 
@@ -135,7 +134,6 @@ void kvm_arch_cpu_reset(CPUState *env)
     } else {
 	env->interrupt_request &= ~CPU_INTERRUPT_HARD;
 	env->halted = 1;
-	env->exception_index = EXCP_HLT;
     }
 }
 
diff --git a/qemu-kvm-x86.c b/qemu-kvm-x86.c
index 8e6fb75..6865385 100644
--- a/qemu-kvm-x86.c
+++ b/qemu-kvm-x86.c
@@ -611,7 +611,6 @@ int kvm_arch_halt(void *opaque, kvm_vcpu_context_t vcpu)
 	  (env->eflags & IF_MASK)) &&
 	!(env->interrupt_request & CPU_INTERRUPT_NMI)) {
             env->halted = 1;
-	    env->exception_index = EXCP_HLT;
     }
     return 1;
 }
@@ -707,7 +706,6 @@ void kvm_arch_cpu_reset(CPUState *env)
 	} else {
 	    env->interrupt_request &= ~CPU_INTERRUPT_HARD;
 	    env->halted = 1;
-	    env->exception_index = EXCP_HLT;
 	}
     }
 }
diff --git a/qemu-kvm.c b/qemu-kvm.c
index 3ae4b45..2930a1d 100644
--- a/qemu-kvm.c
+++ b/qemu-kvm.c
@@ -442,7 +442,6 @@ static int kvm_main_loop_cpu(CPUState *env)
 	if (!env->halted || kvm_irqchip_in_kernel(kvm_context))
 	    kvm_cpu_exec(env);
 	env->exit_request = 0;
-        env->exception_index = EXCP_INTERRUPT;
 	kvm_main_loop_wait(env, 0);
     }
     pthread_mutex_unlock(&qemu_mutex);
-- 
1.6.2.1


^ permalink raw reply related	[flat|nested] 10+ messages in thread

* [PATCH 7/8] s->cpu_env cannot be zero here.
  2009-06-15 13:23 [PATCH 0/8] Small cpu loop cleanups Gleb Natapov
                   ` (5 preceding siblings ...)
  2009-06-15 13:23 ` [PATCH 6/8] env->exception_index is not used by kvm code Gleb Natapov
@ 2009-06-15 13:23 ` Gleb Natapov
  2009-06-15 13:23 ` [PATCH 8/8] env->exit_request is not used by kvm Gleb Natapov
  2009-06-15 13:51 ` [PATCH 0/8] Small cpu loop cleanups Avi Kivity
  8 siblings, 0 replies; 10+ messages in thread
From: Gleb Natapov @ 2009-06-15 13:23 UTC (permalink / raw)
  To: avi; +Cc: kvm

Remove redundant check.

Signed-off-by: Gleb Natapov <gleb@redhat.com>
---
 hw/apic.c |    3 +--
 1 files changed, 1 insertions(+), 2 deletions(-)

diff --git a/hw/apic.c b/hw/apic.c
index f186202..eac54fd 100644
--- a/hw/apic.c
+++ b/hw/apic.c
@@ -471,8 +471,7 @@ static void apic_init_ipi(APICState *s)
         s->cpu_env->halted = 1;
 
     if (kvm_enabled() && !qemu_kvm_irqchip_in_kernel())
-	if (s->cpu_env)
-	    kvm_apic_init(s->cpu_env);
+        kvm_apic_init(s->cpu_env);
 }
 
 /* send a SIPI message to the CPU to start it */
-- 
1.6.2.1


^ permalink raw reply related	[flat|nested] 10+ messages in thread

* [PATCH 8/8] env->exit_request is not used by kvm.
  2009-06-15 13:23 [PATCH 0/8] Small cpu loop cleanups Gleb Natapov
                   ` (6 preceding siblings ...)
  2009-06-15 13:23 ` [PATCH 7/8] s->cpu_env cannot be zero here Gleb Natapov
@ 2009-06-15 13:23 ` Gleb Natapov
  2009-06-15 13:51 ` [PATCH 0/8] Small cpu loop cleanups Avi Kivity
  8 siblings, 0 replies; 10+ messages in thread
From: Gleb Natapov @ 2009-06-15 13:23 UTC (permalink / raw)
  To: avi; +Cc: kvm

Remove its use from kvm code.

Signed-off-by: Gleb Natapov <gleb@redhat.com>
---
 qemu-kvm-x86.c |    3 +--
 qemu-kvm.c     |    3 ---
 vl.c           |    1 -
 3 files changed, 1 insertions(+), 6 deletions(-)

diff --git a/qemu-kvm-x86.c b/qemu-kvm-x86.c
index 6865385..5460136 100644
--- a/qemu-kvm-x86.c
+++ b/qemu-kvm-x86.c
@@ -634,8 +634,7 @@ void kvm_arch_post_kvm_run(void *opaque, CPUState *env)
 
 int kvm_arch_has_work(CPUState *env)
 {
-    if (env->exit_request ||
-        ((env->interrupt_request & CPU_INTERRUPT_HARD) &&
+    if (((env->interrupt_request & CPU_INTERRUPT_HARD) &&
 	 (env->eflags & IF_MASK)) ||
 	(env->interrupt_request & CPU_INTERRUPT_NMI))
 	return 1;
diff --git a/qemu-kvm.c b/qemu-kvm.c
index 2930a1d..bbdb03a 100644
--- a/qemu-kvm.c
+++ b/qemu-kvm.c
@@ -168,8 +168,6 @@ static int kvm_pre_run(void *opaque, void *data)
 
     kvm_arch_pre_kvm_run(opaque, env);
 
-    if (env->exit_request)
-	return 1;
     pthread_mutex_unlock(&qemu_mutex);
     return 0;
 }
@@ -441,7 +439,6 @@ static int kvm_main_loop_cpu(CPUState *env)
     }
 	if (!env->halted || kvm_irqchip_in_kernel(kvm_context))
 	    kvm_cpu_exec(env);
-	env->exit_request = 0;
 	kvm_main_loop_wait(env, 0);
     }
     pthread_mutex_unlock(&qemu_mutex);
diff --git a/vl.c b/vl.c
index 845ed54..c08299c 100644
--- a/vl.c
+++ b/vl.c
@@ -3724,7 +3724,6 @@ void qemu_system_reset_request(void)
     }
     if (cpu_single_env) {
         qemu_kvm_cpu_stop(cpu_single_env);
-        cpu_exit(cpu_single_env);
     }
     qemu_notify_event();
 }
-- 
1.6.2.1


^ permalink raw reply related	[flat|nested] 10+ messages in thread

* Re: [PATCH 0/8] Small cpu loop cleanups
  2009-06-15 13:23 [PATCH 0/8] Small cpu loop cleanups Gleb Natapov
                   ` (7 preceding siblings ...)
  2009-06-15 13:23 ` [PATCH 8/8] env->exit_request is not used by kvm Gleb Natapov
@ 2009-06-15 13:51 ` Avi Kivity
  8 siblings, 0 replies; 10+ messages in thread
From: Avi Kivity @ 2009-06-15 13:51 UTC (permalink / raw)
  To: Gleb Natapov; +Cc: kvm

On 06/15/2009 04:23 PM, Gleb Natapov wrote:
> Also fix "info cpus" to show correct halt status with in kernel irq chip.
>    

Applied all, thanks.

-- 
error compiling committee.c: too many arguments to function


^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2009-06-15 13:51 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-06-15 13:23 [PATCH 0/8] Small cpu loop cleanups Gleb Natapov
2009-06-15 13:23 ` [PATCH 1/8] env->kvm_cpu_state.init is always zero here Gleb Natapov
2009-06-15 13:23 ` [PATCH 2/8] Do not use env->halted to decide where halted state should be handled Gleb Natapov
2009-06-15 13:23 ` [PATCH 3/8] Call kvm_arch_load_regs() instead of kvm_load_registers() Gleb Natapov
2009-06-15 13:23 ` [PATCH 4/8] Rename kvm_(load|save)_mpstate to kvm_arch_(load|save)_mpstate Gleb Natapov
2009-06-15 13:23 ` [PATCH 5/8] Retrieve mp state info in cpu_synchronize_state() Gleb Natapov
2009-06-15 13:23 ` [PATCH 6/8] env->exception_index is not used by kvm code Gleb Natapov
2009-06-15 13:23 ` [PATCH 7/8] s->cpu_env cannot be zero here Gleb Natapov
2009-06-15 13:23 ` [PATCH 8/8] env->exit_request is not used by kvm Gleb Natapov
2009-06-15 13:51 ` [PATCH 0/8] Small cpu loop cleanups Avi Kivity

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox