SHA256
1
0
forked from pool/xen
OBS User unknown
2009-06-12 18:43:24 +00:00
committed by Git OBS Bridge
parent 0bb51565d6
commit 5be0f1bcb4
25 changed files with 466 additions and 131 deletions

View File

@@ -26,7 +26,7 @@ Index: xen-3.4.0-testing/xen/arch/x86/hvm/hvm.c
===================================================================
--- xen-3.4.0-testing.orig/xen/arch/x86/hvm/hvm.c
+++ xen-3.4.0-testing/xen/arch/x86/hvm/hvm.c
@@ -45,6 +45,7 @@
@@ -46,6 +46,7 @@
#include <asm/mc146818rtc.h>
#include <asm/spinlock.h>
#include <asm/hvm/hvm.h>
@@ -34,7 +34,7 @@ Index: xen-3.4.0-testing/xen/arch/x86/hvm/hvm.c
#include <asm/hvm/vpt.h>
#include <asm/hvm/support.h>
#include <asm/hvm/cacheattr.h>
@@ -373,6 +374,7 @@ void hvm_domain_relinquish_resources(str
@@ -374,6 +375,7 @@ void hvm_domain_relinquish_resources(str
void hvm_domain_destroy(struct domain *d)
{
@@ -42,7 +42,7 @@ Index: xen-3.4.0-testing/xen/arch/x86/hvm/hvm.c
hvm_funcs.domain_destroy(d);
rtc_deinit(d);
stdvga_deinit(d);
@@ -673,8 +675,14 @@ int hvm_vcpu_initialise(struct vcpu *v)
@@ -674,8 +676,14 @@ int hvm_vcpu_initialise(struct vcpu *v)
{
int rc;
@@ -57,7 +57,7 @@ Index: xen-3.4.0-testing/xen/arch/x86/hvm/hvm.c
if ( (rc = hvm_funcs.vcpu_initialise(v)) != 0 )
goto fail2;
@@ -721,12 +729,14 @@ int hvm_vcpu_initialise(struct vcpu *v)
@@ -726,6 +734,7 @@ int hvm_vcpu_initialise(struct vcpu *v)
hvm_funcs.vcpu_destroy(v);
fail2:
vlapic_destroy(v);
@@ -65,14 +65,15 @@ Index: xen-3.4.0-testing/xen/arch/x86/hvm/hvm.c
fail1:
return rc;
}
@@ -733,6 +742,7 @@ int hvm_vcpu_initialise(struct vcpu *v)
void hvm_vcpu_destroy(struct vcpu *v)
{
tasklet_kill(&v->arch.hvm_vcpu.assert_evtchn_irq_tasklet);
+ hyperx_intercept_vcpu_destroy(v);
hvm_vcpu_cacheattr_destroy(v);
vlapic_destroy(v);
hvm_funcs.vcpu_destroy(v);
@@ -1678,7 +1688,7 @@ void hvm_cpuid(unsigned int input, unsig
@@ -1684,7 +1694,7 @@ void hvm_cpuid(unsigned int input, unsig
return;
if ( cpuid_hypervisor_leaves(input, eax, ebx, ecx, edx) )
@@ -81,7 +82,7 @@ Index: xen-3.4.0-testing/xen/arch/x86/hvm/hvm.c
domain_cpuid(v->domain, input, *ecx, eax, ebx, ecx, edx);
@@ -1690,6 +1700,8 @@ void hvm_cpuid(unsigned int input, unsig
@@ -1696,6 +1706,8 @@ void hvm_cpuid(unsigned int input, unsig
if ( vlapic_hw_disabled(vcpu_vlapic(v)) )
__clear_bit(X86_FEATURE_APIC & 31, edx);
}
@@ -90,7 +91,7 @@ Index: xen-3.4.0-testing/xen/arch/x86/hvm/hvm.c
}
void hvm_rdtsc_intercept(struct cpu_user_regs *regs)
@@ -1789,6 +1801,8 @@ int hvm_msr_read_intercept(struct cpu_us
@@ -1795,6 +1807,8 @@ int hvm_msr_read_intercept(struct cpu_us
break;
default:
@@ -99,7 +100,7 @@ Index: xen-3.4.0-testing/xen/arch/x86/hvm/hvm.c
return hvm_funcs.msr_read_intercept(regs);
}
@@ -1877,6 +1891,8 @@ int hvm_msr_write_intercept(struct cpu_u
@@ -1883,6 +1897,8 @@ int hvm_msr_write_intercept(struct cpu_u
break;
default:
@@ -108,7 +109,7 @@ Index: xen-3.4.0-testing/xen/arch/x86/hvm/hvm.c
return hvm_funcs.msr_write_intercept(regs);
}
@@ -2044,6 +2060,10 @@ int hvm_do_hypercall(struct cpu_user_reg
@@ -2050,6 +2066,10 @@ int hvm_do_hypercall(struct cpu_user_reg
case 0:
break;
}
@@ -119,7 +120,7 @@ Index: xen-3.4.0-testing/xen/arch/x86/hvm/hvm.c
if ( (eax & 0x80000000) && is_viridian_domain(curr->domain) )
return viridian_hypercall(regs);
@@ -2560,6 +2580,15 @@ long do_hvm_op(unsigned long op, XEN_GUE
@@ -2566,6 +2586,15 @@ long do_hvm_op(unsigned long op, XEN_GUE
rc = -EINVAL;
break;