This is problematic since the n270 qemu model won't boot a real kernel compiled 
for that box.

Eduardo Habkost <ehabk...@redhat.com> wrote:

>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
>> 
>> 

-- 
Sent from my mobile phone. Please excuse brevity and lack of formatting.

Reply via email to