- add xorg-x11-util-devel to BuildRequires to get lndir(1)
- remove xen.migrate.tools_notify_restore_to_hangup_during_migration_--abort_if_busy.patch It changed migration protocol and upstream wants a different solution - bnc#802221 - fix xenpaging readd xenpaging.qemu.flush-cache.patch - Upstream patches from Jan 26891-x86-S3-Fix-cpu-pool-scheduling-after-suspend-resume.patch 26930-x86-EFI-fix-runtime-call-status-for-compat-mode-Dom0.patch - Additional fix for bnc#816159 CVE-2013-1918-xsa45-followup.patch - bnc#817068 - Xen guest with >1 sr-iov vf won't start xen-managed-pci-device.patch - Update to Xen 4.2.2 c/s 26064 The following recent security patches are included in the tarball CVE-2013-0151-xsa34.patch (bnc#797285) CVE-2012-6075-xsa41.patch (bnc#797523) CVE-2013-1917-xsa44.patch (bnc#813673) CVE-2013-1919-xsa46.patch (bnc#813675) - Upstream patch from Jan 26902-x86-EFI-pass-boot-services-variable-info-to-runtime-code.patch - bnc#816159 - VUL-0: xen: CVE-2013-1918: XSA-45: Several long latency operations are not preemptible CVE-2013-1918-xsa45-1-vcpu-destroy-pagetables-preemptible.patch OBS-URL: https://build.opensuse.org/package/show/Virtualization/xen?expand=0&rev=237
This commit is contained in:
@@ -51,7 +51,7 @@ Committed-by: Keir Fraser <keir@xen.org>
|
||||
int vlapic_ipi(
|
||||
struct vlapic *vlapic, uint32_t icr_low, uint32_t icr_high)
|
||||
{
|
||||
@@ -1000,6 +1011,14 @@ void vlapic_adjust_i8259_target(struct d
|
||||
@@ -996,6 +1007,14 @@ void vlapic_adjust_i8259_target(struct d
|
||||
pt_adjust_global_vcpu_target(v);
|
||||
}
|
||||
|
||||
@@ -66,7 +66,7 @@ Committed-by: Keir Fraser <keir@xen.org>
|
||||
int vlapic_has_pending_irq(struct vcpu *v)
|
||||
{
|
||||
struct vlapic *vlapic = vcpu_vlapic(v);
|
||||
@@ -1012,6 +1031,9 @@ int vlapic_has_pending_irq(struct vcpu *
|
||||
@@ -1008,6 +1027,9 @@ int vlapic_has_pending_irq(struct vcpu *
|
||||
if ( irr == -1 )
|
||||
return -1;
|
||||
|
||||
@@ -76,7 +76,7 @@ Committed-by: Keir Fraser <keir@xen.org>
|
||||
isr = vlapic_find_highest_isr(vlapic);
|
||||
isr = (isr != -1) ? isr : 0;
|
||||
if ( (isr & 0xf0) >= (irr & 0xf0) )
|
||||
@@ -1024,6 +1046,9 @@ int vlapic_ack_pending_irq(struct vcpu *
|
||||
@@ -1020,6 +1042,9 @@ int vlapic_ack_pending_irq(struct vcpu *
|
||||
{
|
||||
struct vlapic *vlapic = vcpu_vlapic(v);
|
||||
|
||||
@@ -88,7 +88,7 @@ Committed-by: Keir Fraser <keir@xen.org>
|
||||
|
||||
--- a/xen/arch/x86/hvm/vmx/intr.c
|
||||
+++ b/xen/arch/x86/hvm/vmx/intr.c
|
||||
@@ -206,6 +206,7 @@ void vmx_intr_assist(void)
|
||||
@@ -209,6 +209,7 @@ void vmx_intr_assist(void)
|
||||
struct vcpu *v = current;
|
||||
unsigned int tpr_threshold = 0;
|
||||
enum hvm_intblk intblk;
|
||||
@@ -96,7 +96,7 @@ Committed-by: Keir Fraser <keir@xen.org>
|
||||
|
||||
/* Block event injection when single step with MTF. */
|
||||
if ( unlikely(v->arch.hvm_vcpu.single_step) )
|
||||
@@ -216,7 +217,7 @@ void vmx_intr_assist(void)
|
||||
@@ -219,7 +220,7 @@ void vmx_intr_assist(void)
|
||||
}
|
||||
|
||||
/* Crank the handle on interrupt state. */
|
||||
@@ -105,7 +105,7 @@ Committed-by: Keir Fraser <keir@xen.org>
|
||||
|
||||
do {
|
||||
intack = hvm_vcpu_has_pending_irq(v);
|
||||
@@ -227,16 +228,34 @@ void vmx_intr_assist(void)
|
||||
@@ -230,16 +231,34 @@ void vmx_intr_assist(void)
|
||||
goto out;
|
||||
|
||||
intblk = hvm_interrupt_blocked(v, intack);
|
||||
@@ -145,7 +145,7 @@ Committed-by: Keir Fraser <keir@xen.org>
|
||||
{
|
||||
enable_intr_window(v, intack);
|
||||
goto out;
|
||||
@@ -253,6 +272,44 @@ void vmx_intr_assist(void)
|
||||
@@ -256,6 +275,44 @@ void vmx_intr_assist(void)
|
||||
{
|
||||
hvm_inject_hw_exception(TRAP_machine_check, HVM_DELIVER_NO_ERROR_CODE);
|
||||
}
|
||||
@@ -190,7 +190,7 @@ Committed-by: Keir Fraser <keir@xen.org>
|
||||
else
|
||||
{
|
||||
HVMTRACE_2D(INJ_VIRQ, intack.vector, /*fake=*/ 0);
|
||||
@@ -262,11 +319,16 @@ void vmx_intr_assist(void)
|
||||
@@ -265,11 +322,16 @@ void vmx_intr_assist(void)
|
||||
|
||||
/* Is there another IRQ to queue up behind this one? */
|
||||
intack = hvm_vcpu_has_pending_irq(v);
|
||||
@@ -291,7 +291,7 @@ Committed-by: Keir Fraser <keir@xen.org>
|
||||
struct arch_vmx_struct *arch_vmx = &v->arch.hvm_vmx;
|
||||
--- a/xen/arch/x86/hvm/vmx/vmx.c
|
||||
+++ b/xen/arch/x86/hvm/vmx/vmx.c
|
||||
@@ -1502,6 +1502,22 @@ static void vmx_set_info_guest(struct vc
|
||||
@@ -1507,6 +1507,22 @@ static void vmx_set_info_guest(struct vc
|
||||
vmx_vmcs_exit(v);
|
||||
}
|
||||
|
||||
@@ -314,7 +314,7 @@ Committed-by: Keir Fraser <keir@xen.org>
|
||||
static struct hvm_function_table __read_mostly vmx_function_table = {
|
||||
.name = "VMX",
|
||||
.cpu_up_prepare = vmx_cpu_up_prepare,
|
||||
@@ -1548,7 +1564,9 @@ static struct hvm_function_table __read_
|
||||
@@ -1553,7 +1569,9 @@ static struct hvm_function_table __read_
|
||||
.nhvm_vmcx_guest_intercepts_trap = nvmx_intercepts_exception,
|
||||
.nhvm_vcpu_vmexit_trap = nvmx_vmexit_trap,
|
||||
.nhvm_intr_blocked = nvmx_intr_blocked,
|
||||
@@ -325,7 +325,7 @@ Committed-by: Keir Fraser <keir@xen.org>
|
||||
};
|
||||
|
||||
struct hvm_function_table * __init start_vmx(void)
|
||||
@@ -2284,6 +2302,17 @@ static int vmx_handle_apic_write(void)
|
||||
@@ -2289,6 +2307,17 @@ static int vmx_handle_apic_write(void)
|
||||
return vlapic_apicv_write(current, offset);
|
||||
}
|
||||
|
||||
@@ -343,7 +343,7 @@ Committed-by: Keir Fraser <keir@xen.org>
|
||||
void vmx_vmexit_handler(struct cpu_user_regs *regs)
|
||||
{
|
||||
unsigned int exit_reason, idtv_info, intr_info = 0, vector = 0;
|
||||
@@ -2677,6 +2706,16 @@ void vmx_vmexit_handler(struct cpu_user_
|
||||
@@ -2689,6 +2718,16 @@ void vmx_vmexit_handler(struct cpu_user_
|
||||
hvm_inject_hw_exception(TRAP_gp_fault, 0);
|
||||
break;
|
||||
|
||||
|
Reference in New Issue
Block a user