lkml.org 
[lkml]   [2009]   [Oct]   [26]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [Lguest] 2.6.32-rc5 guest crash
On Mon, Oct 26, 2009 at 02:26:04PM +1030, Rusty Russell wrote:
>
> Subject: x86: sidestep lguest problem by only building cmpxchg8b_emu for pre-Pentium
>
> Arjen's 79e1dd05d1a22 "x86: Provide an alternative() based cmpxchg64()" broke
> lguest, even on systems which have cmpxchg8b support. The emulation code
> gets used until alternatives get run, but it contains native instructions,
> not their paravirt alternatives.
>
> The simplest fix is to turn this code off except for 386 and 486 builds.
>
> Reported-by: Johannes Stezenbach <js@sig21.net>
> Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
>
> diff --git a/arch/x86/Kconfig.cpu b/arch/x86/Kconfig.cpu
> --- a/arch/x86/Kconfig.cpu
> +++ b/arch/x86/Kconfig.cpu
> @@ -400,7 +400,7 @@ config X86_TSC
>
> config X86_CMPXCHG64
> def_bool y
> - depends on X86_PAE || X86_64 || MCORE2 || MPENTIUM4 || MPENTIUMM || MPENTIUMIII || MPENTIUMII || M686 || MATOM
> + depends on !M386 && !M486


FWIW, I've tested it both with original host kernel (only used recompiled
kernel as guest), and after reboot, the guest works in both cases and
the host kernel still boots with the patch applied.


Thanks,
Johannes


\
 
 \ /
  Last update: 2009-10-26 20:17    [W:0.059 / U:0.072 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site