From: Zhang Xiantao <[EMAIL PROTECTED]>
Date: Mon, 3 Dec 2007 16:58:03 +0800
Subject: [PATCH] kvm: qemu: Using to kvm_arch_has_work to handle
arch-specific has_work check.
In this patch, kvm_arch_has_work is introduced to hanlde arch-specific
check.
Signed-off-by: Zhang Xiantao <[EMAIL PROTECTED]>
---
 qemu/qemu-kvm-x86.c |    8 ++++++++
 qemu/qemu-kvm.c     |    5 +----
 qemu/qemu-kvm.h     |    1 +
 3 files changed, 10 insertions(+), 4 deletions(-)

diff --git a/qemu/qemu-kvm-x86.c b/qemu/qemu-kvm-x86.c
index e79e4ad..bb11395 100644
--- a/qemu/qemu-kvm-x86.c
+++ b/qemu/qemu-kvm-x86.c
@@ -587,4 +587,12 @@ void kvm_arch_post_kvm_run(void *opaque, int vcpu)
     cpu_set_apic_tpr(env, kvm_get_cr8(kvm_context, vcpu));
     cpu_set_apic_base(env, kvm_get_apic_base(kvm_context, vcpu));
 }
+
+int kvm_arch_has_work(CPUState *env)
+{
+    if ((env->interrupt_request & (CPU_INTERRUPT_HARD |
CPU_INTERRUPT_EXIT)) &&
+       (env->eflags & IF_MASK))
+       return 1;
+    return 0;
+}
 #endif
diff --git a/qemu/qemu-kvm.c b/qemu/qemu-kvm.c
index 6ec33fe..ba02f49 100644
--- a/qemu/qemu-kvm.c
+++ b/qemu/qemu-kvm.c
@@ -171,10 +171,7 @@ static int has_work(CPUState *env)
        return 0;
     if (!(env->hflags & HF_HALTED_MASK))
        return 1;
-    if ((env->interrupt_request & (CPU_INTERRUPT_HARD |
CPU_INTERRUPT_EXIT)) &&
-       (env->eflags & IF_MASK))
-       return 1;
-    return 0;
+    return kvm_arch_has_work(env);
 }
 
 static int kvm_eat_signal(CPUState *env, int timeout)
diff --git a/qemu/qemu-kvm.h b/qemu/qemu-kvm.h
index c380e60..a6d2ed0 100644
--- a/qemu/qemu-kvm.h
+++ b/qemu/qemu-kvm.h
@@ -35,6 +35,7 @@ void kvm_arch_load_regs(CPUState *env);
 int kvm_arch_qemu_init_env(CPUState *cenv);
 int kvm_arch_halt(void *opaque, int vcpu);
 void kvm_arch_pre_kvm_run(void *opaque, int vcpu);
+int kvm_arch_has_work(CPUState *env);
 
 #define ALIGN(x, y)  (((x)+(y)-1) & ~((y)-1))
 #define BITMAP_SIZE(m) (ALIGN(((m)>>TARGET_PAGE_BITS), HOST_LONG_BITS)
/ 8)
-- 
1.5.1.2

Attachment: 0008-kvm-qemu-Using-to-kvm_arch_has_work-to-handle-arch.patch
Description: 0008-kvm-qemu-Using-to-kvm_arch_has_work-to-handle-arch.patch

-------------------------------------------------------------------------
SF.Net email is sponsored by: The Future of Linux Business White Paper
from Novell.  From the desktop to the data center, Linux is going
mainstream.  Let it simplify your IT future.
http://altfarm.mediaplex.com/ad/ck/8857-50307-18918-4
_______________________________________________
kvm-devel mailing list
kvm-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/kvm-devel

Reply via email to