0c76f22ef1
- bnc#633573 - System fail to boot after running several warm reboot tests 22749-vtd-workarounds.patch - Upstream patches from Jan 22744-ept-pod-locking.patch 22777-vtd-ats-fixes.patch 22781-pod-hap-logdirty.patch 22782-x86-emul-smsw.patch 22789-i386-no-x2apic.patch 22790-svm-resume-migrate-pirqs.patch 22816-x86-pirq-drop-priv-check.patch OBS-URL: https://build.opensuse.org/package/show/Virtualization/xen?expand=0&rev=94
51 lines
2.0 KiB
Diff
51 lines
2.0 KiB
Diff
# HG changeset patch
|
|
# User Keir Fraser <keir@xen.org>
|
|
# Date 1289813498 0
|
|
# Node ID 87f248de52304bc96a80dc093250fed0197f37e0
|
|
# Parent 8af10bd7f2d0e9300f1bc68f7e2fb137fa839365
|
|
x2apic: Remove a panic condition in enabling x2APIC
|
|
|
|
Currently Xen triggers a panic if user disables VT-d by command line
|
|
while not disable x2APIC. This requires users to specify both
|
|
"iommu=0" and "x2apic=0" to disable VT-d if the platform supports
|
|
x2APIC. It's not user friendly. This patch removes the panic
|
|
condition. That's to say, don't require user to specify "x2apic=0"
|
|
when specify "iommu=0". As long as VT-d is not enabled (disabled in
|
|
BIOS or in command line), x2APIC won't be enabled naturally (x2APIC
|
|
depends on VT-d Interrupt remapping).
|
|
|
|
Signed-off-by: Weidong Han <weidong.han@intel.com>
|
|
|
|
Index: xen-4.0.2-testing/xen/arch/x86/apic.c
|
|
===================================================================
|
|
--- xen-4.0.2-testing.orig/xen/arch/x86/apic.c
|
|
+++ xen-4.0.2-testing/xen/arch/x86/apic.c
|
|
@@ -1001,22 +1001,11 @@ static void enable_bsp_x2apic(void)
|
|
}
|
|
else
|
|
{
|
|
- if ( !iommu_enabled || !iommu_intremap || !iommu_qinval )
|
|
- panic("Cannot enable x2APIC due to iommu or interrupt "
|
|
- "remapping or queued invalidation is disabled "
|
|
- "by command line!\n");
|
|
- else
|
|
- {
|
|
- if ( x2apic_preenabled )
|
|
- panic("x2APIC: already enabled by BIOS, but "
|
|
- "iommu_supports_eim fails\n");
|
|
- else
|
|
- {
|
|
- printk("Not enable x2APIC due to "
|
|
- "iommu_supports_eim fails!\n");
|
|
- return;
|
|
- }
|
|
- }
|
|
+ if ( x2apic_preenabled )
|
|
+ panic("x2APIC: already enabled by BIOS, but "
|
|
+ "iommu_supports_eim failed!\n");
|
|
+ printk("Not enabling x2APIC: depends oniommu_supports_eim\n");
|
|
+ return;
|
|
}
|
|
}
|
|
|