51e517e6-AMD-IOMMU-allocate-IRTEs.patch 51e5183f-AMD-IOMMU-untie-remap-and-vector-maps.patch 51e63df6-VMX-fix-interaction-of-APIC-V-and-Viridian-emulation.patch 52146070-ACPI-fix-acpi_os_map_memory.patch 5214d26a-VT-d-warn-about-CFI-being-enabled-by-firmware.patch 5215d094-Nested-VMX-Check-whether-interrupt-is-blocked-by-TPR.patch 5215d0c5-Nested-VMX-Force-check-ISR-when-L2-is-running.patch 5215d135-Nested-VMX-Clear-APIC-v-control-bit-in-vmcs02.patch 5215d2d5-Nested-VMX-Update-APIC-v-RVI-SVI-when-vmexit-to-L1.patch 5215d8b0-Correct-X2-APIC-HVM-emulation.patch - Dropped 520d417d-xen-Add-stdbool.h-workaround-for-BSD.patch OBS-URL: https://build.opensuse.org/package/show/Virtualization/xen?expand=0&rev=267
27 lines
884 B
Diff
27 lines
884 B
Diff
# Commit 7fb5c6b9ef22915e3fcac95cd44857f4457ba783
|
|
# Date 2013-08-22 10:49:24 +0200
|
|
# Author Yang Zhang <yang.z.zhang@Intel.com>
|
|
# Committer Jan Beulich <jbeulich@suse.com>
|
|
Nested VMX: Check whether interrupt is blocked by TPR
|
|
|
|
If interrupt is blocked by L1's TPR, L2 should not see it and keep
|
|
running. Adding the check before L2 to retrive interrupt.
|
|
|
|
Signed-off-by: Yang Zhang <yang.z.zhang@Intel.com>
|
|
Acked-by: "Dong, Eddie" <eddie.dong@intel.com>
|
|
|
|
--- a/xen/arch/x86/hvm/vmx/intr.c
|
|
+++ b/xen/arch/x86/hvm/vmx/intr.c
|
|
@@ -165,6 +165,11 @@ static int nvmx_intr_intercept(struct vc
|
|
{
|
|
u32 ctrl;
|
|
|
|
+ /* If blocked by L1's tpr, then nothing to do. */
|
|
+ if ( nestedhvm_vcpu_in_guestmode(v) &&
|
|
+ hvm_interrupt_blocked(v, intack) == hvm_intblk_tpr )
|
|
+ return 1;
|
|
+
|
|
if ( nvmx_intr_blocked(v) != hvm_intblk_none )
|
|
{
|
|
enable_intr_window(v, intack);
|