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

[Xen-changelog] [xen-unstable] hvm: Tell Viridian-enabled OS to relax timer interrupt checks.



# HG changeset patch
# User Keir Fraser <keir.fraser@xxxxxxxxxx>
# Date 1231250293 0
# Node ID 6674835e18e71c96875f1d624b990c875cd2276d
# Parent  74430e4c047f4157e604a5edbdf0d13654f052d1
hvm: Tell Viridian-enabled OS to relax timer interrupt checks.

Signed-off-by: Keir Fraser <keir.fraser@xxxxxxxxxx>
---
 xen/arch/x86/hvm/viridian.c |    4 +++-
 1 files changed, 3 insertions(+), 1 deletion(-)

diff -r 74430e4c047f -r 6674835e18e7 xen/arch/x86/hvm/viridian.c
--- a/xen/arch/x86/hvm/viridian.c       Tue Jan 06 13:27:55 2009 +0000
+++ b/xen/arch/x86/hvm/viridian.c       Tue Jan 06 13:58:13 2009 +0000
@@ -37,6 +37,7 @@
 
 /* Viridian CPUID 4000004, Implementation Recommendations. */
 #define CPUID4A_MSR_BASED_APIC  (1 << 3)
+#define CPUID4A_RELAX_TIMER_INT (1 << 5)
 
 int cpuid_viridian_leaves(unsigned int leaf, unsigned int *eax,
                           unsigned int *ebx, unsigned int *ecx,
@@ -84,7 +85,8 @@ int cpuid_viridian_leaves(unsigned int l
         if ( (d->arch.hvm_domain.viridian.guest_os_id.raw == 0) ||
              (d->arch.hvm_domain.viridian.guest_os_id.fields.os < 4) )
             break;
-        *eax = CPUID4A_MSR_BASED_APIC;
+        *eax = (CPUID4A_MSR_BASED_APIC |
+                CPUID4A_RELAX_TIMER_INT);
         *ebx = 2047; /* long spin count */
         break;
     }

_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.