I tried reverting this change and it fixes the undefined instruction
exceptions I was seeing. It does break KVM in SE mode though, so we
probably shouldn't yank it out entirely. We need to find a minimal version
of that change which makes KVM in SE work without breaking other things.

Gabe

On Wed, Dec 10, 2014 at 1:40 AM, Gabe Black <gabebl...@google.com> wrote:
>
> Yeah, I was going to say something about that. CPUID shouldn't advertise
> features that we don't support. For instance, that change tells CPUID to
> say we support AVX, but the decoder has no idea what to do with those
> instructions and will trigger an exception if one is executed. I noticed a
> bunch of undefined instruction exceptions in my own workload that weren't
> happening before, and I wonder if that's the cause.
>
> I'm not sure how that change helps support KVM in SE mode. Perhaps it
> should be reverted? Can you explain why it's necessary Alex? If it is,
> maybe we can reshape it a bit to avoid these side effects.
>
> Gabe
>
> On Wed, Dec 10, 2014 at 12:43 AM, 马久跃 via gem5-dev <gem5-dev@gem5.org>
> wrote:
>
>> Hi everyone,
>>
>> I found "x86_64-vmlinux-2.6.28.4" panic when apply changeset 10552: cpuid,
>> x86: Enabling more features in CPUid. (2.6.22.9 works fine)
>> The gem5 also report "warn: x86 cpuid: unimplemented function 13", and
>> kernel report BUG at arch/x86/kernel/xsave.c:323 as following.
>>
>> Can anybody check/fix this bug?
>>
>> Thanks.
>>
>> -------------------------------- KERNEL OUTPUT
>> ----------------------------------
>> MPTABLE: APIC at: 0xFEE00000
>> Processor #0 (Bootup-CPU)
>> I/O APIC #1 Version 17 at 0xFEC00000.
>> Processors: 1
>> Allocating PCI resources starting at c4000000 (gap: c0000000:3fff0000)
>> Built 1 zonelists in Zone order, mobility grouping on.  Total pages:
>> 127500
>> Kernel command line: earlyprintk=ttyS0 console=ttyS0 lpj=7999923
>> root=/dev/hda1
>> Initializing CPU#0
>> FP/SSE not shown under xsave features 0x800500330000000d
>> ------------[ cut here ]------------
>> kernel BUG at arch/x86/kernel/xsave.c:323!
>> invalid opcode: 0000 [#1]
>> last sysfs file:
>> CPU 0
>> Modules linked in:
>> Pid: 0, comm: swapper Tainted: G        W  2.6.28.4 #2
>> RIP: 0010:[<ffffffff80577b45>]  [<ffffffff80577b45>]
>> xsave_cntxt_init+0x35/0x130
>> RSP: 0018:ffffffff80769f48  EFLAGS: 000000b8
>> RAX: 000000000000003c RBX: 0000000000000000 RCX: ffffffff807cd460
>> RDX: 00000000ffffffff RSI: 0000000000000d5c RDI: ffffffff80702180
>> RBP: 0000000000000000 R08: 00000000ffffffff R09: 00000000000003fd
>> R10: 0000000000000000 R11: 0000000000000000 R12: 0000000000000000
>> R13: ffffffffffffffff R14: 0000000000000000 R15: 0000000000000000
>> FS:  0000000000000000(0000) GS:ffffffff807bf020(0000)
>> knlGS:0000000000000000
>> CS:  0010 DS: 0018 ES: 0018 CR0: 0000000080050033
>> CR2: 0000000000000000 CR3: 0000000000201000 CR4: 00000000000006a0
>> DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
>> DR3: 0000000000000000 DR6: 0000000000000000 DR7: 0000000000000000
>> Process swapper (pid: 0, threadinfo ffffffff80768000, task
>> ffffffff806f5380)
>> Stack:
>>  0000000000000000 ffffffff8078f133 ffffffff80795000 ffffffff8078fe72
>>  8000896f59002087 00000000ffffffff 8022ee0000104a50 ffffffff80794000
>>  ffffffff80795000 ffffffff8076a98d 0000000000000000 ffffffff80795000
>> Call Trace:
>>  [<ffffffff8078f133>] fpu_init+0x3e/0x8e [<ffffffff8078fe72>]
>> cpu_init+0x222/0x240 [<ffffffff8076a98d>] start_kernel+0x16f/0x2d9
>> [<ffffffff8076a407>] x86_64_start_kernel+0xd9/0xdfCode: 48 c1 e2 20 89 c0
>> 48
>> 8d 34 02 48 89 f0 48 89 35 12 a6 24 00 83 e0 03 48 83 f8 03 74 12 48 c7 c7
>> 50 74 67 80 31 c0 e8 9c 30 01 00 <0f> 0b eb fe f6 05 57 b7 1e 00 04 48 c7
>> 05
>> e5 a5 24 00 03 00 00
>> RIP  [<ffffffff80577b45>] xsave_cntxt_init+0x35/0x130
>>  RSP <ffffffff80769f48>
>> ---[ end trace 4eaa2a86a8e2da22 ]---
>> Kernel panic - not syncing: Attempted to kill the idle task!
>>
>>
>> ----
>> Jiuyue
>>
>>
>> _______________________________________________
>> gem5-dev mailing list
>> gem5-dev@gem5.org
>> http://m5sim.org/mailman/listinfo/gem5-dev
>>
>
>
_______________________________________________
gem5-dev mailing list
gem5-dev@gem5.org
http://m5sim.org/mailman/listinfo/gem5-dev

Reply via email to