From: kaf24@firebug.cl.cam.ac.uk Date: Fri, 26 Aug 2005 11:00:14 +0000 (+0000) Subject: Fix GDT allocation for SMP guests. X-Git-Tag: archive/raspbian/4.8.0-1+rpi1~1^2~16831 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=f67a7f79025ddd93f78aaa244eedf9e95b9e80f0;p=xen.git Fix GDT allocation for SMP guests. Signed-off-by: Jun Nakajima --- diff --git a/linux-2.6-xen-sparse/arch/xen/i386/kernel/smpboot.c b/linux-2.6-xen-sparse/arch/xen/i386/kernel/smpboot.c index 9e3efcd0ad..dd5eb7b100 100644 --- a/linux-2.6-xen-sparse/arch/xen/i386/kernel/smpboot.c +++ b/linux-2.6-xen-sparse/arch/xen/i386/kernel/smpboot.c @@ -853,7 +853,7 @@ static int __init do_boot_cpu(int apicid) atomic_set(&init_deasserted, 0); #if 1 - cpu_gdt_descr[cpu].address = __get_free_page(GFP_KERNEL); + cpu_gdt_descr[cpu].address = __get_free_page(GFP_KERNEL|__GFP_ZERO); BUG_ON(cpu_gdt_descr[0].size > PAGE_SIZE); cpu_gdt_descr[cpu].size = cpu_gdt_descr[0].size; printk("GDT: copying %d bytes from %lx to %lx\n", diff --git a/linux-2.6-xen-sparse/arch/xen/x86_64/kernel/smpboot.c b/linux-2.6-xen-sparse/arch/xen/x86_64/kernel/smpboot.c index 4245ac202d..035a358efa 100644 --- a/linux-2.6-xen-sparse/arch/xen/x86_64/kernel/smpboot.c +++ b/linux-2.6-xen-sparse/arch/xen/x86_64/kernel/smpboot.c @@ -739,7 +739,7 @@ static int __cpuinit do_boot_cpu(int cpu, int apicid) atomic_set(&init_deasserted, 0); #ifdef CONFIG_XEN - cpu_gdt_descr[cpu].address = __get_free_page(GFP_KERNEL); + cpu_gdt_descr[cpu].address = __get_free_page(GFP_KERNEL|__GFP_ZERO); BUG_ON(cpu_gdt_descr[0].size > PAGE_SIZE); cpu_gdt_descr[cpu].size = cpu_gdt_descr[0].size; memcpy((void *)cpu_gdt_descr[cpu].address,