qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH] target-i386: n270 can MOVBE


From: Eduardo Habkost
Subject: Re: [Qemu-devel] [PATCH] target-i386: n270 can MOVBE
Date: Fri, 8 Feb 2013 13:19:02 -0200
User-agent: Mutt/1.5.21 (2010-09-15)

On Fri, Feb 08, 2013 at 10:30:02AM +0100, Borislav Petkov wrote:
> From: Borislav Petkov <address@hidden>
> 
> The Atom core (cpu name "n270" in QEMU speak) supports MOVBE. This is
> needed when booting 3.8 and later linux kernels built with the MATOM
> target because we require MOVBE in order to boot properly now.
> 
> Cc: "H. Peter Anvin" <address@hidden>
> Cc: Richard Henderson <address@hidden>
> Signed-off-by: Borislav Petkov <address@hidden>
> ---
> 
> Right, so I was playing with booting MATOM kernels in QEMU.
> As it turns out, QEMU's n270 model doesn't advertize MOVBE
> although the real hardware supports it. Quick search pointed me to
> http://lists.nongnu.org/archive/html/qemu-devel/2013-01/msg04317.html
> which adds that support, among other things. I've merged Richard's
> patchset with qemu's current master and after applying this patch below,
> I can report success booting an MATOM kernel with QEMU. The same kernel
> boots on the real n270 hardware, btw.
> 
>  target-i386/cpu.c | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
> 
> diff --git a/target-i386/cpu.c b/target-i386/cpu.c
> index 9f38e4435e53..83816edd8410 100644
> --- a/target-i386/cpu.c
> +++ b/target-i386/cpu.c
> @@ -610,7 +610,8 @@ static x86_def_t builtin_x86_defs[] = {
>              CPUID_ACPI | CPUID_SS | CPUID_HT | CPUID_TM | CPUID_PBE,
>              /* Some CPUs got no CPUID_SEP */
>          .ext_features = CPUID_EXT_SSE3 | CPUID_EXT_MONITOR | CPUID_EXT_SSSE3 
> |
> -            CPUID_EXT_DSCPL | CPUID_EXT_EST | CPUID_EXT_TM2 | CPUID_EXT_XTPR,
> +            CPUID_EXT_DSCPL | CPUID_EXT_EST | CPUID_EXT_TM2 | CPUID_EXT_XTPR 
> |
> +         CPUID_EXT_MOVBE,
>          .ext2_features = (PPRO_FEATURES & CPUID_EXT2_AMD_ALIASES) |


"-machine pc-1.3 -cpu n270" (and older machine-types) needs to keep
MOVBE disabled, or you will break live migration.

Personally I wouldn't mind declaring n270 as a non-migratable CPU model.
But libvirt supports n270, so it already expects n270 to expose a stable
ABI on each machine-type.


>              CPUID_EXT2_NX,
>          .ext3_features = CPUID_EXT3_LAHF_LM,
> -- 
> 1.8.1.2.422.g08c0e7f
> 
> 

-- 
Eduardo



reply via email to

[Prev in Thread] Current Thread [Next in Thread]