From: Andrew Cooper Date: Thu, 15 May 2014 13:33:01 +0000 (+0200) Subject: x86/setup: resync the boot stack 8 bytes at a time X-Git-Tag: archive/raspbian/4.8.0-1+rpi1~1^2~5001 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=7b31305ff55de21d798005ed791a693909c0bdc3;p=xen.git x86/setup: resync the boot stack 8 bytes at a time Signed-off-by: Andrew Cooper --- diff --git a/xen/arch/x86/setup.c b/xen/arch/x86/setup.c index d8598a392b..a2fe7e03fd 100644 --- a/xen/arch/x86/setup.c +++ b/xen/arch/x86/setup.c @@ -906,7 +906,7 @@ void __init noreturn __start_xen(unsigned long mbi_p) /* Re-sync the stack and then switch to relocated pagetables. */ asm volatile ( - "rep movsb ; " /* re-sync the stack */ + "rep movsq ; " /* re-sync the stack */ "movq %%cr4,%%rsi ; " "andb $0x7f,%%sil ; " "movq %%rsi,%%cr4 ; " /* CR4.PGE == 0 */ @@ -914,7 +914,7 @@ void __init noreturn __start_xen(unsigned long mbi_p) "orb $0x80,%%sil ; " "movq %%rsi,%%cr4 " /* CR4.PGE == 1 */ : : "r" (__pa(idle_pg_table)), "S" (cpu0_stack), - "D" (__va(__pa(cpu0_stack))), "c" (STACK_SIZE) : "memory" ); + "D" (__va(__pa(cpu0_stack))), "c" (STACK_SIZE / 8) : "memory" ); bootstrap_map(NULL); }