fb53ca5547
libxl.add-option-to-disable-disk-cache-flushes-in-qdisk.patch qemu-xen-upstream-qdisk-cache-unsafe.patch - libxl: introduce an option for disabling the non-O_DIRECT workaround recognize direct-io-safe in domU.cfg diskspec libxl.introduce-an-option-to-disable-the-non-O_DIRECT-workaround.patch - fate#316071: add discard support for file backed storage (qdisk) update patch to allow more values in overloaded ->readwrite member - bnc#826717 - VUL-0: CVE-2013-3495: XSA-59: xen: Intel VT-d Interrupt Remapping engines can be evaded by native NMI interrupts 537b5e50-VT-d-apply-quirks-at-device-setup-time-rather-than-only-at-boot.patch 537b5e79-VT-d-extend-error-report-masking-workaround-to-newer-chipsets.patch - Upstream patches from Jan 53709b77-Nested-VMX-load-current_vmcs-only-when-it-exists.patch 53732f4f-x86-MCE-bypass-uninitialized-vcpu-in-vMCE-injection.patch 537b5ede-move-domain-to-cpupool0-before-destroying-it.patch - Update README.SuSE with information on the toolstack change - fate#316071: add discard support for file backed storage (qdisk) update to recognize option discard/no-discard instead of discard=0,1 to match upstream change OBS-URL: https://build.opensuse.org/package/show/Virtualization/xen?expand=0&rev=316
27 lines
1.0 KiB
Diff
27 lines
1.0 KiB
Diff
# Commit a07084525c126c596326dc1442dd218f522f51b4
|
|
# Date 2014-05-14 10:54:39 +0200
|
|
# Author Kai Huang <kai.huang@linux.intel.com>
|
|
# Committer Jan Beulich <jbeulich@suse.com>
|
|
x86/MCE: bypass uninitialized vcpu in vMCE injection
|
|
|
|
Dom0 may bring up less number of vCPUs than xen hypervisor actually created for
|
|
it, and in this case, on Intel platform, vMCE injection to dom0 will fail due to
|
|
injecting vMCE to uninitialized vcpu, and cause dom0 crash.
|
|
|
|
Signed-off-by: Kai Huang <kai.huang@linux.intel.com>
|
|
Acked-by: Christoph Egger <chegger@amazon.de>
|
|
|
|
--- a/xen/arch/x86/cpu/mcheck/vmce.c
|
|
+++ b/xen/arch/x86/cpu/mcheck/vmce.c
|
|
@@ -357,6 +357,10 @@ int inject_vmce(struct domain *d, int vc
|
|
if ( vcpu != VMCE_INJECT_BROADCAST && vcpu != v->vcpu_id )
|
|
continue;
|
|
|
|
+ /* Don't inject to uninitialized VCPU. */
|
|
+ if ( !v->is_initialised )
|
|
+ continue;
|
|
+
|
|
if ( (has_hvm_container_domain(d) ||
|
|
guest_has_trap_callback(d, v->vcpu_id, TRAP_machine_check)) &&
|
|
!test_and_set_bool(v->mce_pending) )
|