|
|
|
|
|
|
|
|
|
|
xen-devel
[Xen-devel] [PATCH] switch to a known good/static GDT before kexec
# HG changeset patch
# User Ian Campbell <ian.campbell@xxxxxxxxxx>
# Date 1246524221 -3600
# Node ID 31002ac6a13caadab7c163d387af558a2b2da7ce
# Parent 8e18dd41c6c7bb0980b29393b275c564cfb96437
switch to a known good/static GDT before kexec
kexec has been failing (at least on 32on64, didn't try others) since
18771:8e18dd41c6c7 "x86: reduce GDT switching". Ensure that we are
using a known good GDT before attempting to switch to compatability mode.
Signed-off-by: Ian Campbell <ian.campbell@xxxxxxxxxx>
diff -r 8e18dd41c6c7 -r 31002ac6a13c xen/arch/x86/machine_kexec.c
--- a/xen/arch/x86/machine_kexec.c Wed Nov 12 12:01:35 2008 +0000
+++ b/xen/arch/x86/machine_kexec.c Thu Jul 02 09:43:41 2009 +0100
@@ -115,6 +115,13 @@
void machine_kexec(xen_kexec_image_t *image)
{
+ struct desc_ptr gdt_desc = {
+ .base = (unsigned long)(boot_cpu_gdt_table - FIRST_RESERVED_GDT_ENTRY),
+ .limit = LAST_RESERVED_GDT_BYTE
+ };
+
+ asm volatile ( "lgdt %0" : : "m" (gdt_desc) );
+
#ifdef CONFIG_COMPAT
if ( is_pv_32on64_domain(dom0) )
{
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
|
<Prev in Thread] |
Current Thread |
[Next in Thread>
|
- [Xen-devel] [PATCH] switch to a known good/static GDT before kexec,
Ian Campbell <=
|
|
|
|
|