diff options
author | Keir Fraser <keir.fraser@citrix.com> | 2009-01-06 13:58:13 +0000 |
---|---|---|
committer | Keir Fraser <keir.fraser@citrix.com> | 2009-01-06 13:58:13 +0000 |
commit | f498e9065d34ffc27300ffab18ef1806d3318530 (patch) | |
tree | ba2b39df3b9ba406173146a2516ad67bbbb8b552 /xen/arch/x86/hvm/viridian.c | |
parent | ece13f1fb3a6a9473540afa42631b2380e5a0a38 (diff) | |
download | xen-f498e9065d34ffc27300ffab18ef1806d3318530.tar.gz xen-f498e9065d34ffc27300ffab18ef1806d3318530.tar.bz2 xen-f498e9065d34ffc27300ffab18ef1806d3318530.zip |
hvm: Tell Viridian-enabled OS to relax timer interrupt checks.
Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
Diffstat (limited to 'xen/arch/x86/hvm/viridian.c')
-rw-r--r-- | xen/arch/x86/hvm/viridian.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/xen/arch/x86/hvm/viridian.c b/xen/arch/x86/hvm/viridian.c index b6389e6c47..a18ea9e3d1 100644 --- a/xen/arch/x86/hvm/viridian.c +++ b/xen/arch/x86/hvm/viridian.c @@ -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 leaf, unsigned int *eax, 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; } |