On Fri, Feb 08, 2013 at 10:30:02AM +0100, Borislav Petkov wrote: > From: Borislav Petkov <b...@suse.de> > > 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" <h...@zytor.com> > Cc: Richard Henderson <r...@twiddle.net> > Signed-off-by: Borislav Petkov <b...@suse.de> > --- > > 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