* [BUG] x86: failed to boot a kernel on a Ryzen machine @ 2017-04-24 6:58 Satoru Takeuchi 2017-04-24 11:07 ` Borislav Petkov 2017-04-24 11:27 ` Satoru Takeuchi 0 siblings, 2 replies; 18+ messages in thread From: Satoru Takeuchi @ 2017-04-24 6:58 UTC (permalink / raw) To: x86, linux-kernel [-- Attachment #1: Type: text/plain, Size: 5817 bytes --] Recently I bought a new Ryzen machine. When I tried to test v4.11-rc8 on it, it failed to boot with the following panic log. ``` ... [ 0.227720] raid6: sse2x1 gen() 7985 MB/s [ 0.295709] raid6: sse2x1 xor() 8181 MB/s [ 0.363706] raid6: sse2x2 gen() 17531 MB/s [ 0.431699] raid6: sse2x2 xor() 11098 MB/s [ 0.499693] raid6: sse2x4 gen() 18509 MB/s [ 0.567688] raid6: sse2x4 xor() 10177 MB/s [ 0.571692] invalid opcode: 0000 [#1] SMP [ 0.572312] Modules linked in: [ 0.572822] CPU: 0 PID: 1 Comm: swapper/0 Not tainted 4.11.0-rc8-ktest #1 [ 0.573734] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS Ubuntu-1.8.2-1ubuntu1 04/01/2014 [ 0.575040] task: ffff8f791e1c0000 task.stack: ffff9c72c00d0000 [ 0.575865] RIP: 0010:raid6_avx21_gen_syndrome+0x3d/0x120 [ 0.576634] RSP: 0018:ffff9c72c00d3d70 EFLAGS: 00010246 [ 0.577376] RAX: 0000000000000000 RBX: ffff9c72c00d3dc0 RCX: 00000000fffedb97 [ 0.578327] RDX: 0000000000000000 RSI: 0000000000001000 RDI: 0000000000000012 [ 0.579283] RBP: ffff9c72c00d3da0 R08: 0000000000000000 R09: 00000000000000cd [ 0.580243] R10: 00000000fffedb86 R11: ffffffffa617008d R12: 0000000000001000 [ 0.581211] R13: ffff8f791e39e000 R14: ffff8f791e39f000 R15: 0000000000000012 [ 0.582163] FS: 0000000000000000(0000) GS:ffff8f791fc00000(0000) knlGS:0000000000000000 [ 0.583324] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 [ 0.584128] CR2: 0000000000000000 CR3: 000000001be09000 CR4: 00000000003006f0 [ 0.585078] Call Trace: [ 0.594952] raid6_select_algo+0x116/0x30b [ 0.595592] ? libcrc32c_mod_init+0x2b/0x2b [ 0.596240] do_one_initcall+0x53/0x1a0 [ 0.596843] ? parse_args+0x2cf/0x490 [ 0.597421] kernel_init_freeable+0x182/0x21c [ 0.598077] ? rest_init+0x80/0x80 [ 0.598626] kernel_init+0xe/0x100 [ 0.599175] ret_from_fork+0x2c/0x40 [ 0.599741] Code: 55 41 54 53 48 89 d3 48 8d 14 c5 00 00 00 00 41 89 ff 49 89 f4 48 83 ec 08 4c 8b 2c c3 4c 8b 74 13 08 48 89 55 d0 e8 53 ed a9 ff <c5> fd 6f 05 2b 2d 4e 00 c5 e5 ef db 4d 85 e4 48 8b 55 d0 0f 84 [ 0.602215] RIP: raid6_avx21_gen_syndrome+0x3d/0x120 RSP: ffff9c72c00d3d70 [ 0.603154] ---[ end trace 17ee01f86b8fc548 ]--- [ 0.603850] Kernel panic - not syncing: Attempted to kill init! exitcode=0x0000000b [ 0.603850] [ 0.605276] ---[ end Kernel panic - not syncing: Attempted to kill init! exitcode=0x0000000b ... ``` This panic occured at lib/raid6/avx2.c#raid6_avx21_gen_syndrome() and this function consists of many AVX instructions. lib/raid6/avx2.c: ``` /* * Plain AVX2 implementation */ static void raid6_avx21_gen_syndrome(int disks, size_t bytes, void **ptrs) { u8 **dptr = (u8 **)ptrs; u8 *p, *q; int d, z, z0; z0 = disks - 3; /* Highest data disk */ p = dptr[z0+1]; /* XOR parity */ q = dptr[z0+2]; /* RS syndrome */ kernel_fpu_begin(); asm volatile("vmovdqa %0,%%ymm0" : : "m" (raid6_avx2_constants.x1d[0])); asm volatile("vpxor %ymm3,%ymm3,%ymm3"); /* Zero temp */ for (d = 0; d < bytes; d += 32) { asm volatile("prefetchnta %0" : : "m" (dptr[z0][d])); asm volatile("vmovdqa %0,%%ymm2" : : "m" (dptr[z0][d]));/* P[0] */ asm volatile("prefetchnta %0" : : "m" (dptr[z0-1][d])); asm volatile("vmovdqa %ymm2,%ymm4");/* Q[0] */ asm volatile("vmovdqa %0,%%ymm6" : : "m" (dptr[z0-1][d])); for (z = z0-2; z >= 0; z--) { asm volatile("prefetchnta %0" : : "m" (dptr[z][d])); asm volatile("vpcmpgtb %ymm4,%ymm3,%ymm5"); asm volatile("vpaddb %ymm4,%ymm4,%ymm4"); asm volatile("vpand %ymm0,%ymm5,%ymm5"); asm volatile("vpxor %ymm5,%ymm4,%ymm4"); asm volatile("vpxor %ymm6,%ymm2,%ymm2"); asm volatile("vpxor %ymm6,%ymm4,%ymm4"); asm volatile("vmovdqa %0,%%ymm6" : : "m" (dptr[z][d])); } asm volatile("vpcmpgtb %ymm4,%ymm3,%ymm5"); asm volatile("vpaddb %ymm4,%ymm4,%ymm4"); asm volatile("vpand %ymm0,%ymm5,%ymm5"); asm volatile("vpxor %ymm5,%ymm4,%ymm4"); asm volatile("vpxor %ymm6,%ymm2,%ymm2"); asm volatile("vpxor %ymm6,%ymm4,%ymm4"); asm volatile("vmovntdq %%ymm2,%0" : "=m" (p[d])); asm volatile("vpxor %ymm2,%ymm2,%ymm2"); asm volatile("vmovntdq %%ymm4,%0" : "=m" (q[d])); asm volatile("vpxor %ymm4,%ymm4,%ymm4"); } asm volatile("sfence" : : : "memory"); kernel_fpu_end(); } ``` This problem can be bypassed by the following patch. ``` diff --git a/arch/x86/Makefile b/arch/x86/Makefile index 2d44933..b589097 100644 --- a/arch/x86/Makefile +++ b/arch/x86/Makefile @@ -162,7 +162,7 @@ asinstr := $(call as-instr,fxsaveq (%rax),-DCONFIG_AS_FXSAVEQ=1) asinstr += $(call as-instr,pshufb %xmm0$(comma)%xmm0,-DCONFIG_AS_SSSE3=1) asinstr += $(call as-instr,crc32l %eax$(comma)%eax,-DCONFIG_AS_CRC32=1) avx_instr := $(call as-instr,vxorps %ymm0$(comma)%ymm1$(comma)%ymm2,-DCONFIG_AS_AVX=1) -avx2_instr :=$(call as-instr,vpbroadcastb %xmm0$(comma)%ymm1,-DCONFIG_AS_AVX2=1) +#avx2_instr :=$(call as-instr,vpbroadcastb %xmm0$(comma)%ymm1,-DCONFIG_AS_AVX2=1) avx512_instr :=$(call as-instr,vpmovm2b %k1$(comma)%zmm5,-DCONFIG_AS_AVX512=1) sha1_ni_instr :=$(call as-instr,sha1msg1 %xmm0$(comma)%xmm1,-DCONFIG_AS_SHA1_NI=1) sha256_ni_instr :=$(call as-instr,sha256msg1 %xmm0$(comma)%xmm1,-DCONFIG_AS_SHA256_NI=1) ``` I suspect that there is a problem about handling AVX2 in the linux kernel or in Ryzen. # Build environent ## Hardware CPU: Ryzen 1800x ## Software - distro: Ubuntu 16.04 x86_64 - gcc: gcc (Ubuntu 5.4.0-6ubuntu1~16.04.4) 5.4.0 20160609 ## Build target kernel version linux v4.11-r8 ## Test environment ## Hardware A VM running on the above mentioned hardware. ## Software - distro: Ubuntu 16.04 # Additional information - .config is attached in this mail - This problam also happens on v4.10 - When I tested v4.10 in my previous Core i5 machine, it succeeded to boot. Thanks, Satoru [-- Attachment #2: dot_config.xz --] [-- Type: application/octet-stream, Size: 24816 bytes --] ^ permalink raw reply related [flat|nested] 18+ messages in thread
* Re: [BUG] x86: failed to boot a kernel on a Ryzen machine 2017-04-24 6:58 [BUG] x86: failed to boot a kernel on a Ryzen machine Satoru Takeuchi @ 2017-04-24 11:07 ` Borislav Petkov 2017-04-24 12:39 ` Satoru Takeuchi 2017-04-24 11:27 ` Satoru Takeuchi 1 sibling, 1 reply; 18+ messages in thread From: Borislav Petkov @ 2017-04-24 11:07 UTC (permalink / raw) To: Satoru Takeuchi; +Cc: x86, linux-kernel On Mon, Apr 24, 2017 at 03:58:05PM +0900, Satoru Takeuchi wrote: > Recently I bought a new Ryzen machine. When I tried to test v4.11-rc8 on it, it failed to boot > with the following panic log. > > ``` > ... > [ 0.227720] raid6: sse2x1 gen() 7985 MB/s > [ 0.295709] raid6: sse2x1 xor() 8181 MB/s > [ 0.363706] raid6: sse2x2 gen() 17531 MB/s > [ 0.431699] raid6: sse2x2 xor() 11098 MB/s > [ 0.499693] raid6: sse2x4 gen() 18509 MB/s > [ 0.567688] raid6: sse2x4 xor() 10177 MB/s > [ 0.571692] invalid opcode: 0000 [#1] SMP > [ 0.572312] Modules linked in: > [ 0.572822] CPU: 0 PID: 1 Comm: swapper/0 Not tainted 4.11.0-rc8-ktest #1 > [ 0.573734] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS Ubuntu-1.8.2-1ubuntu1 04/01/2014 ^^^^^^^^^^^^^^ Next time your report a bug, say it is a guest on the *very* first line of your report. Now, how do you start your guest exactly? Full cmdline pls. -- Regards/Gruss, Boris. Good mailing practices for 400: avoid top-posting and trim the reply. ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [BUG] x86: failed to boot a kernel on a Ryzen machine 2017-04-24 11:07 ` Borislav Petkov @ 2017-04-24 12:39 ` Satoru Takeuchi 2017-04-24 12:48 ` Borislav Petkov 0 siblings, 1 reply; 18+ messages in thread From: Satoru Takeuchi @ 2017-04-24 12:39 UTC (permalink / raw) To: Borislav Petkov; +Cc: Satoru Takeuchi, x86, linux-kernel At Mon, 24 Apr 2017 13:07:53 +0200, Borislav Petkov wrote: > > On Mon, Apr 24, 2017 at 03:58:05PM +0900, Satoru Takeuchi wrote: > > Recently I bought a new Ryzen machine. When I tried to test v4.11-rc8 on it, it failed to boot > > with the following panic log. > > > > ``` > > ... > > [ 0.227720] raid6: sse2x1 gen() 7985 MB/s > > [ 0.295709] raid6: sse2x1 xor() 8181 MB/s > > [ 0.363706] raid6: sse2x2 gen() 17531 MB/s > > [ 0.431699] raid6: sse2x2 xor() 11098 MB/s > > [ 0.499693] raid6: sse2x4 gen() 18509 MB/s > > [ 0.567688] raid6: sse2x4 xor() 10177 MB/s > > [ 0.571692] invalid opcode: 0000 [#1] SMP > > [ 0.572312] Modules linked in: > > [ 0.572822] CPU: 0 PID: 1 Comm: swapper/0 Not tainted 4.11.0-rc8-ktest #1 > > [ 0.573734] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS Ubuntu-1.8.2-1ubuntu1 04/01/2014 > ^^^^^^^^^^^^^^ > > Next time your report a bug, say it is a guest on the *very* first line > of your report. I'm very sorry. > > Now, how do you start your guest exactly? Full cmdline pls. I used the following auto-test tool (its backend is ktest). https://github.com/satoru-takeuchi/elkdat This problem can be reproduced by the following command on Ubuntu 16.04. ``` $ sudo apt-get install git vagrant libvirt-bin libvirt-dev kernel-package qemu-kvm libssl-dev libncurses5-dev ... $ sudo usermod -aG libvirt <username> ``` Log out and back in here. ``` $ sudo sed -i'' "s/Specification.all = nil/Specification.reset/" /usr/lib/ruby/vendor_ruby/vagrant/bundler.rb # See https://github.com/vagrant-libvirt/vagrant-libvirt/issues/575 for more details about this patching $ vagrant plugin install vagrant-libvirt $ git clone https://github.com/satoru-takeuchi/elkdat.git ... $ cp -r /path/to/linux/source elkdat/linux $ cd elkdat $ ./init # start guest ... $ pushd linux ... $ git checkout v4.11-rc8 ... $ popd ... $ ./test boot # build and boot v4.11-rc8 ... # kernel panic happens here ``` The core of the starting guest process of above mentioned tools is as follows. 1. Add the vagrant box for the guest VM ``` $ vagrant box add elastic/ubuntu-16.04-x86_64 --provider libvirt ... ``` 2. Start the VM with the following Vagrantfile. ``` $ cd elkdat $ vagrant up ``` The summary of Vagrantfile is here. ``` Vagrant.configure("2") do |config| ... config.vm.define :ktest do |vm| vm.vm.box = "elastic/ubuntu-16.04-x86_64" vm.vm.synced_folder './', '/vagrant', type: 'rsync' vm.vm.provider :libvirt do |domain| domain.cpus = 2 end end ... end ``` Thanks, Satoru > > -- > Regards/Gruss, > Boris. > > Good mailing practices for 400: avoid top-posting and trim the reply. ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [BUG] x86: failed to boot a kernel on a Ryzen machine 2017-04-24 12:39 ` Satoru Takeuchi @ 2017-04-24 12:48 ` Borislav Petkov 2017-04-24 13:09 ` Satoru Takeuchi 0 siblings, 1 reply; 18+ messages in thread From: Borislav Petkov @ 2017-04-24 12:48 UTC (permalink / raw) To: Satoru Takeuchi; +Cc: x86, linux-kernel On Mon, Apr 24, 2017 at 09:39:12PM +0900, Satoru Takeuchi wrote: > I used the following auto-test tool (its backend is ktest). > > https://github.com/satoru-takeuchi/elkdat > > This problem can be reproduced by the following command on Ubuntu 16.04. > > ``` > $ sudo apt-get install git vagrant libvirt-bin libvirt-dev kernel-package qemu-kvm libssl-dev libncurses5-dev Can you minimize that reproducer? I.e, can you dump only the qemu command line options from this setup? They're enough to be able to start a guest with your config without me having to install all that other stuff. Thanks. -- Regards/Gruss, Boris. Good mailing practices for 400: avoid top-posting and trim the reply. ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [BUG] x86: failed to boot a kernel on a Ryzen machine 2017-04-24 12:48 ` Borislav Petkov @ 2017-04-24 13:09 ` Satoru Takeuchi 2017-04-25 9:36 ` Borislav Petkov 2017-04-25 14:58 ` Masami Hiramatsu 0 siblings, 2 replies; 18+ messages in thread From: Satoru Takeuchi @ 2017-04-24 13:09 UTC (permalink / raw) To: Borislav Petkov; +Cc: Satoru Takeuchi, x86, linux-kernel At Mon, 24 Apr 2017 14:48:46 +0200, Borislav Petkov wrote: > > On Mon, Apr 24, 2017 at 09:39:12PM +0900, Satoru Takeuchi wrote: > > I used the following auto-test tool (its backend is ktest). > > > > https://github.com/satoru-takeuchi/elkdat > > > > This problem can be reproduced by the following command on Ubuntu 16.04. > > > > ``` > > $ sudo apt-get install git vagrant libvirt-bin libvirt-dev kernel-package qemu-kvm libssl-dev libncurses5-dev > > Can you minimize that reproducer? I.e, can you dump only the qemu > command line options from this setup? > > They're enough to be able to start a guest with your config without me > having to install all that other stuff. OK. Is it sufficient information? ``` qemu-system-x86_64 -enable-kvm -name elkdat_ktest -S -machine pc-i440fx-xenial,accel=kvm,usb=off -cpu Opteron_G3,+smap,+adx,+rdseed,+bmi2,+smep,+avx2,+bmi1,+fsgsbase,+perfctr_nb,+perfctr_core,+topoext,+tce,+wdt,+skinit,+osvw,+3dnowprefetch,+cr8legacy,+extapic,+cmp_legacy,+pdpe1gb,+fxsr_opt,+mmxext,+rdrand,+f16c,+avx,+osxsave,+xsave,+aes,+movbe,+sse4.2,+sse4.1,+fma,+ssse3,+pclmuldq,+ht,+vme -m 512 -realtime mlock=off -smp 2,sockets=2,cores=1,threads=1 -uuid 12de0e96-5d01-4ab0-b0b3-165f55999960 -no-user-config -nodefaults -chardev socket,id=charmonitor,path=/var/lib/libvirt/qemu/domain-elkdat_ktest/monitor.sock,server,nowait -mon chardev=charmonitor,id=monitor,mode=control -rtc base=utc -no-shutdown -boot strict=on -device piix3-usb-uhci,id=usb,bus=pci.0,addr=0x1.0x2 -drive file=/var/lib/libvirt/images/elkdat_ktest.img,format=qcow2,if=none,id=drive-virtio-disk0 -device virtio-blk-pci,scsi=off,bus=pci.0,addr=0x3,drive=drive-virtio-disk0,id=virtio-disk0,bootindex=1 -netdev tap,fd=26,id=hostnet0,vhost=on,vhostfd=28 -device virtio-net-pci,netdev=hostnet0,id=net0,mac=52:54:00:e4:6f:3e,bus=pci.0,addr=0x5 -chardev pty,id=charserial0 -device isa-serial,chardev=charserial0,id=serial0 -vnc 127.0.0.1:0 -k en-us -device cirrus-vga,id=video0,bus=pci.0,addr=0x2 -device virtio-balloon-pci,id=balloon0,bus=pci.0,addr=0x4 -msg timestamp=on ``` Thanks, Satoru > > Thanks. > > -- > Regards/Gruss, > Boris. > > Good mailing practices for 400: avoid top-posting and trim the reply. ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [BUG] x86: failed to boot a kernel on a Ryzen machine 2017-04-24 13:09 ` Satoru Takeuchi @ 2017-04-25 9:36 ` Borislav Petkov 2017-04-26 7:48 ` Paolo Bonzini 2017-04-25 14:58 ` Masami Hiramatsu 1 sibling, 1 reply; 18+ messages in thread From: Borislav Petkov @ 2017-04-25 9:36 UTC (permalink / raw) To: Satoru Takeuchi, Paolo Bonzini; +Cc: x86, linux-kernel, kvm ML On Mon, Apr 24, 2017 at 10:09:04PM +0900, Satoru Takeuchi wrote: > At Mon, 24 Apr 2017 14:48:46 +0200, > Borislav Petkov wrote: > > > > On Mon, Apr 24, 2017 at 09:39:12PM +0900, Satoru Takeuchi wrote: > > > I used the following auto-test tool (its backend is ktest). > > > > > > https://github.com/satoru-takeuchi/elkdat > > > > > > This problem can be reproduced by the following command on Ubuntu 16.04. > > > > > > ``` > > > $ sudo apt-get install git vagrant libvirt-bin libvirt-dev kernel-package qemu-kvm libssl-dev libncurses5-dev > > > > Can you minimize that reproducer? I.e, can you dump only the qemu > > command line options from this setup? > > > > They're enough to be able to start a guest with your config without me > > having to install all that other stuff. > > OK. Is it sufficient information? > > ``` > qemu-system-x86_64 -enable-kvm -name elkdat_ktest -S -machine pc-i440fx-xenial,accel=kvm,usb=off -cpu Opteron_G3,+smap,+adx,+rdseed,+bmi2,+smep,+avx2,+bmi1,+fsgsbase,+perfctr_nb,+perfctr_core,+topoext,+tce,+wdt,+skinit,+osvw,+3dnowprefetch,+cr8legacy,+extapic,+cmp_legacy,+pdpe1gb,+fxsr_opt,+mmxext,+rdrand,+f16c,+avx,+osxsave,+xsave,+aes,+movbe,+sse4.2,+sse4.1,+fma,+ssse3,+pclmuldq,+ht,+vme -m 512 -realtime mlock=off -smp 2,sockets=2,cores=1,threads=1 -uuid 12de0e96-5d01-4ab0-b0b3-165f55999960 -no-user-config -nodefaults -chardev socket,id=charmonitor,path=/var/lib/libvirt/qemu/domain-elkdat_ktest/monitor.sock,server,nowait -mon chardev=charmonitor,id=monitor,mode=control -rtc base=utc -no-shutdown -boot strict=on -device piix3-usb-uhci,id=usb,bus=pci.0,addr=0x1.0x2 -drive file=/var/lib/libvirt/images/elkdat_ktest.img,format=qcow2,if=none,id=drive-virtio-disk0 -device virtio-blk-pci,scsi=off,bus=pci.0,addr=0x3,drive=drive-virtio-disk0,id=virtio-disk0,bootindex=1 -netdev tap,fd=26,id=hostnet0,vhost=on,vhostfd=28 -device virtio-net-pci,netdev=hostnet0,id=net0,mac=52:54:00:e4:6f:3e,bus=pci.0,addr=0x5 -chardev pty,id=charserial0 -device isa-serial,chardev=charserial0,id=serial0 -vnc 127.0.0.1:0 -k en-us -device cirrus-vga,id=video0,bus=pci.0,addr=0x2 -device virtio-balloon-pci,id=balloon0,bus=pci.0,addr=0x4 -msg timestamp=on > ``` Yes, thanks, I was able to reproduce: [ 0.488015] raid6: sse2x1 gen() 2073 MB/s [ 0.560008] raid6: sse2x1 xor() 2670 MB/s [ 0.628022] raid6: sse2x2 gen() 3273 MB/s [ 0.696007] raid6: sse2x2 xor() 3752 MB/s [ 0.764015] raid6: sse2x4 gen() 5532 MB/s [ 0.832009] raid6: sse2x4 xor() 3736 MB/s [ 0.836019] invalid opcode: 0000 [#1] SMP [ 0.838532] Modules linked in: [ 0.840000] CPU: 0 PID: 1 Comm: swapper/0 Not tainted 4.11.0-rc8 #2 [ 0.840000] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS rel-1.10.2-0-g5f4c7b1-prebuilt.qemu-project.org 04/01/2014 [ 0.840000] task: ffff9c01bb828000 task.stack: ffffb1f68031c000 [ 0.840000] RIP: 0010:raid6_avx21_gen_syndrome+0x3d/0x120 [ 0.840000] RSP: 0018:ffffb1f68031fd78 EFLAGS: 00010246 [ 0.840000] RAX: 0000000080000000 RBX: ffffb1f68031fdc8 RCX: 00000000fffedbd9 [ 0.840000] RDX: 0000000000000080 RSI: 0000000000001000 RDI: 0000000000000012 [ 0.840000] RBP: ffffb1f68031fda8 R08: ffffffff90a7d4e0 R09: 00000000000000f0 [ 0.840000] R10: 00000000fffedbc8 R11: 0000000091171001 R12: 0000000000001000 [ 0.840000] R13: ffff9c01bb444000 R14: ffff9c01bb445000 R15: 0000000000000012 [ 0.840000] FS: 0000000000000000(0000) GS:ffff9c01bec00000(0000) knlGS:0000000000000000 [ 0.840000] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 [ 0.840000] CR2: 0000000000000000 CR3: 0000000072e09000 CR4: 00000000003006f0 [ 0.840000] Call Trace: [ 0.840000] raid6_select_algo+0x112/0x30f [ 0.840000] ? libcrc32c_mod_init+0x2c/0x2c [ 0.840000] ? set_debug_rodata+0x12/0x12 [ 0.840000] do_one_initcall+0x52/0x1a0 [ 0.840000] ? set_debug_rodata+0x12/0x12 [ 0.840000] kernel_init_freeable+0x178/0x200 [ 0.840000] ? rest_init+0x80/0x80 [ 0.840000] kernel_init+0xe/0x100 [ 0.840000] ret_from_fork+0x2c/0x40 [ 0.840000] Code: 55 41 54 53 48 89 d3 48 8d 14 c5 00 00 00 00 41 89 ff 49 89 f4 48 83 ec 08 4c 8b 2c c3 4c 8b 74 13 08 48 89 55 d0 e8 73 ca a9 ff <c5> fd 6f 05 eb 09 4e 00 c5 e5 ef db 4d 85 e4 48 8b 55 d0 0f 84 [ 0.840000] RIP: raid6_avx21_gen_syndrome+0x3d/0x120 RSP: ffffb1f68031fd78 [ 0.840009] ---[ end trace 5db62c95950cdfd9 ]--- [ 0.844549] Kernel panic - not syncing: Attempted to kill init! exitcode=0x0000000b [ 0.844549] [ 0.848000] ---[ end Kernel panic - not syncing: Attempted to kill init! exitcode=0x0000000b [ 0.848000] Looking at CR4: 00000000003006f0, it doesn't have OSXSAVE set. I.e., bit 18. And when that bit is not set, VMOVDQA raises an #UD. And for some reason qemu doesn't like it even if you request that bit with +osxsave: warning: host doesn't support requested feature: CPUID.01H:ECX.osxsave [bit 27] Even though the corresponding bit in CPUID on the host is set: 0x00000001: EAX=0x00800f00, EBX=0x40200800, ECX=0x7ed8320b, EDX=0x178bfbff ^ Paolo, any thoughts? -- Regards/Gruss, Boris. Good mailing practices for 400: avoid top-posting and trim the reply. ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [BUG] x86: failed to boot a kernel on a Ryzen machine 2017-04-25 9:36 ` Borislav Petkov @ 2017-04-26 7:48 ` Paolo Bonzini 2017-04-26 8:14 ` Borislav Petkov 2017-04-26 11:47 ` Satoru Takeuchi 0 siblings, 2 replies; 18+ messages in thread From: Paolo Bonzini @ 2017-04-26 7:48 UTC (permalink / raw) To: Borislav Petkov, Satoru Takeuchi; +Cc: x86, linux-kernel, kvm ML On 25/04/2017 11:36, Borislav Petkov wrote: > Looking at CR4: 00000000003006f0, it doesn't have OSXSAVE set. I.e., bit > 18. And when that bit is not set, VMOVDQA raises an #UD. > > And for some reason qemu doesn't like it even if you request that bit with > +osxsave: > > warning: host doesn't support requested feature: CPUID.01H:ECX.osxsave [bit 27] > > Even though the corresponding bit in CPUID on the host is set: > > 0x00000001: EAX=0x00800f00, EBX=0x40200800, ECX=0x7ed8320b, EDX=0x178bfbff > ^ > Paolo, any thoughts? The OSXSAVE CPUID bit is not set by QEMU, it is set by the OS itself (indirectly) when it sets CR4.OSXSAVE. QEMU says it's not available (probably) because the Opteron_G3 CPU model does not have the 0xD CPUID leaf. I think you're using libvirt's "host-model" CPU model. That model needs QEMU/libvirt support for each host CPU family, and in general it often gives rise to bugs such as the one you're reporting, Change it to host-passthrough, and please send us the output of /proc/cpuinfo so we can add support for Ryzen in "host-model". Thanks, Paolo ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [BUG] x86: failed to boot a kernel on a Ryzen machine 2017-04-26 7:48 ` Paolo Bonzini @ 2017-04-26 8:14 ` Borislav Petkov 2017-04-26 11:47 ` Satoru Takeuchi 1 sibling, 0 replies; 18+ messages in thread From: Borislav Petkov @ 2017-04-26 8:14 UTC (permalink / raw) To: Paolo Bonzini; +Cc: Satoru Takeuchi, x86, linux-kernel, kvm ML On Wed, Apr 26, 2017 at 09:48:22AM +0200, Paolo Bonzini wrote: > The OSXSAVE CPUID bit is not set by QEMU, it is set by the OS itself > (indirectly) when it sets CR4.OSXSAVE. QEMU says it's not available > (probably) because the Opteron_G3 CPU model does not have the 0xD CPUID > leaf. Nope: 0x00000000 0x00: eax=0x00000005 ebx=0x68747541 ecx=0x444d4163 edx=0x69746e65 ^^^^^^^^^^ highest is 0x5. I'll let Satoru comment on the rest. Thanks Paolo! -- Regards/Gruss, Boris. Good mailing practices for 400: avoid top-posting and trim the reply. ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [BUG] x86: failed to boot a kernel on a Ryzen machine 2017-04-26 7:48 ` Paolo Bonzini 2017-04-26 8:14 ` Borislav Petkov @ 2017-04-26 11:47 ` Satoru Takeuchi 2017-04-26 16:58 ` Paolo Bonzini 1 sibling, 1 reply; 18+ messages in thread From: Satoru Takeuchi @ 2017-04-26 11:47 UTC (permalink / raw) To: Paolo Bonzini; +Cc: Borislav Petkov, Satoru Takeuchi, x86, linux-kernel, kvm ML At Wed, 26 Apr 2017 09:48:22 +0200, Paolo Bonzini wrote: > > > > On 25/04/2017 11:36, Borislav Petkov wrote: > > Looking at CR4: 00000000003006f0, it doesn't have OSXSAVE set. I.e., bit > > 18. And when that bit is not set, VMOVDQA raises an #UD. > > > > And for some reason qemu doesn't like it even if you request that bit with > > +osxsave: > > > > warning: host doesn't support requested feature: CPUID.01H:ECX.osxsave [bit 27] > > > > Even though the corresponding bit in CPUID on the host is set: > > > > 0x00000001: EAX=0x00800f00, EBX=0x40200800, ECX=0x7ed8320b, EDX=0x178bfbff > > ^ > > Paolo, any thoughts? > > The OSXSAVE CPUID bit is not set by QEMU, it is set by the OS itself > (indirectly) when it sets CR4.OSXSAVE. QEMU says it's not available > (probably) because the Opteron_G3 CPU model does not have the 0xD CPUID > leaf. > > I think you're using libvirt's "host-model" CPU model. That model needs > QEMU/libvirt support for each host CPU family, and in general it often > gives rise to bugs such as the one you're reporting, Yes, I used "host-model". > > Change it to host-passthrough, I changed it as you said and my own kernel succeeded to boot, thank you! > and please send us the output of/proc/cpuinfo so we can add support for Ryzen in "host-model". OK, here it is. ``` $ cat /proc/cpuinfo processor : 0 vendor_id : AuthenticAMD cpu family : 23 model : 1 model name : AMD Ryzen 7 1800X Eight-Core Processor stepping : 1 microcode : 0x800111c cpu MHz : 2200.000 cache size : 512 KB physical id : 0 siblings : 16 core id : 0 cpu cores : 8 apicid : 0 initial apicid : 0 fpu : yes fpu_exception : yes cpuid level : 13 wp : yes flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc extd_apicid aperfmperf eagerfpu pni pclmulqdq monitor ssse3 fma cx16 sse4_1 sse4_2 movbe popcnt aes xsave avx f16c rdrand lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw skinit wdt tce topoext perfctr_core perfctr_nb bpext perfctr_l2 mwaitx hw_pstate vmmcall fsgsbase bmi1 avx2 smep bmi2 rdseed adx smap clflushopt sha_ni xsaveopt xsavec xgetbv1 xsaves clzero irperf arat npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter pfthreshold avic overflow_recov succor smca bugs : fxsave_leak sysret_ss_attrs null_seg bogomips : 7186.66 TLB size : 2560 4K pages clflush size : 64 cache_alignment : 64 address sizes : 48 bits physical, 48 bits virtual power management: ts ttp tm hwpstate eff_freq_ro [13] [14] processor : 1 vendor_id : AuthenticAMD cpu family : 23 model : 1 model name : AMD Ryzen 7 1800X Eight-Core Processor stepping : 1 microcode : 0x800111c cpu MHz : 2200.000 cache size : 512 KB physical id : 0 siblings : 16 core id : 0 cpu cores : 8 apicid : 1 initial apicid : 1 fpu : yes fpu_exception : yes cpuid level : 13 wp : yes flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc extd_apicid aperfmperf eagerfpu pni pclmulqdq monitor ssse3 fma cx16 sse4_1 sse4_2 movbe popcnt aes xsave avx f16c rdrand lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw skinit wdt tce topoext perfctr_core perfctr_nb bpext perfctr_l2 mwaitx hw_pstate vmmcall fsgsbase bmi1 avx2 smep bmi2 rdseed adx smap clflushopt sha_ni xsaveopt xsavec xgetbv1 xsaves clzero irperf arat npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter pfthreshold avic overflow_recov succor smca bugs : fxsave_leak sysret_ss_attrs null_seg bogomips : 7186.66 TLB size : 2560 4K pages clflush size : 64 cache_alignment : 64 address sizes : 48 bits physical, 48 bits virtual power management: ts ttp tm hwpstate eff_freq_ro [13] [14] processor : 2 vendor_id : AuthenticAMD cpu family : 23 model : 1 model name : AMD Ryzen 7 1800X Eight-Core Processor stepping : 1 microcode : 0x800111c cpu MHz : 2200.000 cache size : 512 KB physical id : 0 siblings : 16 core id : 1 cpu cores : 8 apicid : 2 initial apicid : 2 fpu : yes fpu_exception : yes cpuid level : 13 wp : yes flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc extd_apicid aperfmperf eagerfpu pni pclmulqdq monitor ssse3 fma cx16 sse4_1 sse4_2 movbe popcnt aes xsave avx f16c rdrand lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw skinit wdt tce topoext perfctr_core perfctr_nb bpext perfctr_l2 mwaitx hw_pstate vmmcall fsgsbase bmi1 avx2 smep bmi2 rdseed adx smap clflushopt sha_ni xsaveopt xsavec xgetbv1 xsaves clzero irperf arat npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter pfthreshold avic overflow_recov succor smca bugs : fxsave_leak sysret_ss_attrs null_seg bogomips : 7186.66 TLB size : 2560 4K pages clflush size : 64 cache_alignment : 64 address sizes : 48 bits physical, 48 bits virtual power management: ts ttp tm hwpstate eff_freq_ro [13] [14] processor : 3 vendor_id : AuthenticAMD cpu family : 23 model : 1 model name : AMD Ryzen 7 1800X Eight-Core Processor stepping : 1 microcode : 0x800111c cpu MHz : 2200.000 cache size : 512 KB physical id : 0 siblings : 16 core id : 1 cpu cores : 8 apicid : 3 initial apicid : 3 fpu : yes fpu_exception : yes cpuid level : 13 wp : yes flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc extd_apicid aperfmperf eagerfpu pni pclmulqdq monitor ssse3 fma cx16 sse4_1 sse4_2 movbe popcnt aes xsave avx f16c rdrand lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw skinit wdt tce topoext perfctr_core perfctr_nb bpext perfctr_l2 mwaitx hw_pstate vmmcall fsgsbase bmi1 avx2 smep bmi2 rdseed adx smap clflushopt sha_ni xsaveopt xsavec xgetbv1 xsaves clzero irperf arat npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter pfthreshold avic overflow_recov succor smca bugs : fxsave_leak sysret_ss_attrs null_seg bogomips : 7186.66 TLB size : 2560 4K pages clflush size : 64 cache_alignment : 64 address sizes : 48 bits physical, 48 bits virtual power management: ts ttp tm hwpstate eff_freq_ro [13] [14] processor : 4 vendor_id : AuthenticAMD cpu family : 23 model : 1 model name : AMD Ryzen 7 1800X Eight-Core Processor stepping : 1 microcode : 0x800111c cpu MHz : 2200.000 cache size : 512 KB physical id : 0 siblings : 16 core id : 2 cpu cores : 8 apicid : 4 initial apicid : 4 fpu : yes fpu_exception : yes cpuid level : 13 wp : yes flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc extd_apicid aperfmperf eagerfpu pni pclmulqdq monitor ssse3 fma cx16 sse4_1 sse4_2 movbe popcnt aes xsave avx f16c rdrand lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw skinit wdt tce topoext perfctr_core perfctr_nb bpext perfctr_l2 mwaitx hw_pstate vmmcall fsgsbase bmi1 avx2 smep bmi2 rdseed adx smap clflushopt sha_ni xsaveopt xsavec xgetbv1 xsaves clzero irperf arat npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter pfthreshold avic overflow_recov succor smca bugs : fxsave_leak sysret_ss_attrs null_seg bogomips : 7186.66 TLB size : 2560 4K pages clflush size : 64 cache_alignment : 64 address sizes : 48 bits physical, 48 bits virtual power management: ts ttp tm hwpstate eff_freq_ro [13] [14] processor : 5 vendor_id : AuthenticAMD cpu family : 23 model : 1 model name : AMD Ryzen 7 1800X Eight-Core Processor stepping : 1 microcode : 0x800111c cpu MHz : 2200.000 cache size : 512 KB physical id : 0 siblings : 16 core id : 2 cpu cores : 8 apicid : 5 initial apicid : 5 fpu : yes fpu_exception : yes cpuid level : 13 wp : yes flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc extd_apicid aperfmperf eagerfpu pni pclmulqdq monitor ssse3 fma cx16 sse4_1 sse4_2 movbe popcnt aes xsave avx f16c rdrand lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw skinit wdt tce topoext perfctr_core perfctr_nb bpext perfctr_l2 mwaitx hw_pstate vmmcall fsgsbase bmi1 avx2 smep bmi2 rdseed adx smap clflushopt sha_ni xsaveopt xsavec xgetbv1 xsaves clzero irperf arat npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter pfthreshold avic overflow_recov succor smca bugs : fxsave_leak sysret_ss_attrs null_seg bogomips : 7186.66 TLB size : 2560 4K pages clflush size : 64 cache_alignment : 64 address sizes : 48 bits physical, 48 bits virtual power management: ts ttp tm hwpstate eff_freq_ro [13] [14] processor : 6 vendor_id : AuthenticAMD cpu family : 23 model : 1 model name : AMD Ryzen 7 1800X Eight-Core Processor stepping : 1 microcode : 0x800111c cpu MHz : 2200.000 cache size : 512 KB physical id : 0 siblings : 16 core id : 3 cpu cores : 8 apicid : 6 initial apicid : 6 fpu : yes fpu_exception : yes cpuid level : 13 wp : yes flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc extd_apicid aperfmperf eagerfpu pni pclmulqdq monitor ssse3 fma cx16 sse4_1 sse4_2 movbe popcnt aes xsave avx f16c rdrand lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw skinit wdt tce topoext perfctr_core perfctr_nb bpext perfctr_l2 mwaitx hw_pstate vmmcall fsgsbase bmi1 avx2 smep bmi2 rdseed adx smap clflushopt sha_ni xsaveopt xsavec xgetbv1 xsaves clzero irperf arat npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter pfthreshold avic overflow_recov succor smca bugs : fxsave_leak sysret_ss_attrs null_seg bogomips : 7186.66 TLB size : 2560 4K pages clflush size : 64 cache_alignment : 64 address sizes : 48 bits physical, 48 bits virtual power management: ts ttp tm hwpstate eff_freq_ro [13] [14] processor : 7 vendor_id : AuthenticAMD cpu family : 23 model : 1 model name : AMD Ryzen 7 1800X Eight-Core Processor stepping : 1 microcode : 0x800111c cpu MHz : 2200.000 cache size : 512 KB physical id : 0 siblings : 16 core id : 3 cpu cores : 8 apicid : 7 initial apicid : 7 fpu : yes fpu_exception : yes cpuid level : 13 wp : yes flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc extd_apicid aperfmperf eagerfpu pni pclmulqdq monitor ssse3 fma cx16 sse4_1 sse4_2 movbe popcnt aes xsave avx f16c rdrand lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw skinit wdt tce topoext perfctr_core perfctr_nb bpext perfctr_l2 mwaitx hw_pstate vmmcall fsgsbase bmi1 avx2 smep bmi2 rdseed adx smap clflushopt sha_ni xsaveopt xsavec xgetbv1 xsaves clzero irperf arat npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter pfthreshold avic overflow_recov succor smca bugs : fxsave_leak sysret_ss_attrs null_seg bogomips : 7186.66 TLB size : 2560 4K pages clflush size : 64 cache_alignment : 64 address sizes : 48 bits physical, 48 bits virtual power management: ts ttp tm hwpstate eff_freq_ro [13] [14] processor : 8 vendor_id : AuthenticAMD cpu family : 23 model : 1 model name : AMD Ryzen 7 1800X Eight-Core Processor stepping : 1 microcode : 0x800111c cpu MHz : 2200.000 cache size : 512 KB physical id : 0 siblings : 16 core id : 4 cpu cores : 8 apicid : 8 initial apicid : 8 fpu : yes fpu_exception : yes cpuid level : 13 wp : yes flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc extd_apicid aperfmperf eagerfpu pni pclmulqdq monitor ssse3 fma cx16 sse4_1 sse4_2 movbe popcnt aes xsave avx f16c rdrand lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw skinit wdt tce topoext perfctr_core perfctr_nb bpext perfctr_l2 mwaitx hw_pstate vmmcall fsgsbase bmi1 avx2 smep bmi2 rdseed adx smap clflushopt sha_ni xsaveopt xsavec xgetbv1 xsaves clzero irperf arat npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter pfthreshold avic overflow_recov succor smca bugs : fxsave_leak sysret_ss_attrs null_seg bogomips : 7186.66 TLB size : 2560 4K pages clflush size : 64 cache_alignment : 64 address sizes : 48 bits physical, 48 bits virtual power management: ts ttp tm hwpstate eff_freq_ro [13] [14] processor : 9 vendor_id : AuthenticAMD cpu family : 23 model : 1 model name : AMD Ryzen 7 1800X Eight-Core Processor stepping : 1 microcode : 0x800111c cpu MHz : 2200.000 cache size : 512 KB physical id : 0 siblings : 16 core id : 4 cpu cores : 8 apicid : 9 initial apicid : 9 fpu : yes fpu_exception : yes cpuid level : 13 wp : yes flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc extd_apicid aperfmperf eagerfpu pni pclmulqdq monitor ssse3 fma cx16 sse4_1 sse4_2 movbe popcnt aes xsave avx f16c rdrand lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw skinit wdt tce topoext perfctr_core perfctr_nb bpext perfctr_l2 mwaitx hw_pstate vmmcall fsgsbase bmi1 avx2 smep bmi2 rdseed adx smap clflushopt sha_ni xsaveopt xsavec xgetbv1 xsaves clzero irperf arat npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter pfthreshold avic overflow_recov succor smca bugs : fxsave_leak sysret_ss_attrs null_seg bogomips : 7186.66 TLB size : 2560 4K pages clflush size : 64 cache_alignment : 64 address sizes : 48 bits physical, 48 bits virtual power management: ts ttp tm hwpstate eff_freq_ro [13] [14] processor : 10 vendor_id : AuthenticAMD cpu family : 23 model : 1 model name : AMD Ryzen 7 1800X Eight-Core Processor stepping : 1 microcode : 0x800111c cpu MHz : 2200.000 cache size : 512 KB physical id : 0 siblings : 16 core id : 5 cpu cores : 8 apicid : 10 initial apicid : 10 fpu : yes fpu_exception : yes cpuid level : 13 wp : yes flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc extd_apicid aperfmperf eagerfpu pni pclmulqdq monitor ssse3 fma cx16 sse4_1 sse4_2 movbe popcnt aes xsave avx f16c rdrand lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw skinit wdt tce topoext perfctr_core perfctr_nb bpext perfctr_l2 mwaitx hw_pstate vmmcall fsgsbase bmi1 avx2 smep bmi2 rdseed adx smap clflushopt sha_ni xsaveopt xsavec xgetbv1 xsaves clzero irperf arat npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter pfthreshold avic overflow_recov succor smca bugs : fxsave_leak sysret_ss_attrs null_seg bogomips : 7186.66 TLB size : 2560 4K pages clflush size : 64 cache_alignment : 64 address sizes : 48 bits physical, 48 bits virtual power management: ts ttp tm hwpstate eff_freq_ro [13] [14] processor : 11 vendor_id : AuthenticAMD cpu family : 23 model : 1 model name : AMD Ryzen 7 1800X Eight-Core Processor stepping : 1 microcode : 0x800111c cpu MHz : 2200.000 cache size : 512 KB physical id : 0 siblings : 16 core id : 5 cpu cores : 8 apicid : 11 initial apicid : 11 fpu : yes fpu_exception : yes cpuid level : 13 wp : yes flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc extd_apicid aperfmperf eagerfpu pni pclmulqdq monitor ssse3 fma cx16 sse4_1 sse4_2 movbe popcnt aes xsave avx f16c rdrand lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw skinit wdt tce topoext perfctr_core perfctr_nb bpext perfctr_l2 mwaitx hw_pstate vmmcall fsgsbase bmi1 avx2 smep bmi2 rdseed adx smap clflushopt sha_ni xsaveopt xsavec xgetbv1 xsaves clzero irperf arat npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter pfthreshold avic overflow_recov succor smca bugs : fxsave_leak sysret_ss_attrs null_seg bogomips : 7186.66 TLB size : 2560 4K pages clflush size : 64 cache_alignment : 64 address sizes : 48 bits physical, 48 bits virtual power management: ts ttp tm hwpstate eff_freq_ro [13] [14] processor : 12 vendor_id : AuthenticAMD cpu family : 23 model : 1 model name : AMD Ryzen 7 1800X Eight-Core Processor stepping : 1 microcode : 0x800111c cpu MHz : 2200.000 cache size : 512 KB physical id : 0 siblings : 16 core id : 6 cpu cores : 8 apicid : 12 initial apicid : 12 fpu : yes fpu_exception : yes cpuid level : 13 wp : yes flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc extd_apicid aperfmperf eagerfpu pni pclmulqdq monitor ssse3 fma cx16 sse4_1 sse4_2 movbe popcnt aes xsave avx f16c rdrand lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw skinit wdt tce topoext perfctr_core perfctr_nb bpext perfctr_l2 mwaitx hw_pstate vmmcall fsgsbase bmi1 avx2 smep bmi2 rdseed adx smap clflushopt sha_ni xsaveopt xsavec xgetbv1 xsaves clzero irperf arat npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter pfthreshold avic overflow_recov succor smca bugs : fxsave_leak sysret_ss_attrs null_seg bogomips : 7186.66 TLB size : 2560 4K pages clflush size : 64 cache_alignment : 64 address sizes : 48 bits physical, 48 bits virtual power management: ts ttp tm hwpstate eff_freq_ro [13] [14] processor : 13 vendor_id : AuthenticAMD cpu family : 23 model : 1 model name : AMD Ryzen 7 1800X Eight-Core Processor stepping : 1 microcode : 0x800111c cpu MHz : 2200.000 cache size : 512 KB physical id : 0 siblings : 16 core id : 6 cpu cores : 8 apicid : 13 initial apicid : 13 fpu : yes fpu_exception : yes cpuid level : 13 wp : yes flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc extd_apicid aperfmperf eagerfpu pni pclmulqdq monitor ssse3 fma cx16 sse4_1 sse4_2 movbe popcnt aes xsave avx f16c rdrand lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw skinit wdt tce topoext perfctr_core perfctr_nb bpext perfctr_l2 mwaitx hw_pstate vmmcall fsgsbase bmi1 avx2 smep bmi2 rdseed adx smap clflushopt sha_ni xsaveopt xsavec xgetbv1 xsaves clzero irperf arat npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter pfthreshold avic overflow_recov succor smca bugs : fxsave_leak sysret_ss_attrs null_seg bogomips : 7186.66 TLB size : 2560 4K pages clflush size : 64 cache_alignment : 64 address sizes : 48 bits physical, 48 bits virtual power management: ts ttp tm hwpstate eff_freq_ro [13] [14] processor : 14 vendor_id : AuthenticAMD cpu family : 23 model : 1 model name : AMD Ryzen 7 1800X Eight-Core Processor stepping : 1 microcode : 0x800111c cpu MHz : 2200.000 cache size : 512 KB physical id : 0 siblings : 16 core id : 7 cpu cores : 8 apicid : 14 initial apicid : 14 fpu : yes fpu_exception : yes cpuid level : 13 wp : yes flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc extd_apicid aperfmperf eagerfpu pni pclmulqdq monitor ssse3 fma cx16 sse4_1 sse4_2 movbe popcnt aes xsave avx f16c rdrand lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw skinit wdt tce topoext perfctr_core perfctr_nb bpext perfctr_l2 mwaitx hw_pstate vmmcall fsgsbase bmi1 avx2 smep bmi2 rdseed adx smap clflushopt sha_ni xsaveopt xsavec xgetbv1 xsaves clzero irperf arat npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter pfthreshold avic overflow_recov succor smca bugs : fxsave_leak sysret_ss_attrs null_seg bogomips : 7186.66 TLB size : 2560 4K pages clflush size : 64 cache_alignment : 64 address sizes : 48 bits physical, 48 bits virtual power management: ts ttp tm hwpstate eff_freq_ro [13] [14] processor : 15 vendor_id : AuthenticAMD cpu family : 23 model : 1 model name : AMD Ryzen 7 1800X Eight-Core Processor stepping : 1 microcode : 0x800111c cpu MHz : 2200.000 cache size : 512 KB physical id : 0 siblings : 16 core id : 7 cpu cores : 8 apicid : 15 initial apicid : 15 fpu : yes fpu_exception : yes cpuid level : 13 wp : yes flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc extd_apicid aperfmperf eagerfpu pni pclmulqdq monitor ssse3 fma cx16 sse4_1 sse4_2 movbe popcnt aes xsave avx f16c rdrand lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw skinit wdt tce topoext perfctr_core perfctr_nb bpext perfctr_l2 mwaitx hw_pstate vmmcall fsgsbase bmi1 avx2 smep bmi2 rdseed adx smap clflushopt sha_ni xsaveopt xsavec xgetbv1 xsaves clzero irperf arat npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter pfthreshold avic overflow_recov succor smca bugs : fxsave_leak sysret_ss_attrs null_seg bogomips : 7186.66 TLB size : 2560 4K pages clflush size : 64 cache_alignment : 64 address sizes : 48 bits physical, 48 bits virtual power management: ts ttp tm hwpstate eff_freq_ro [13] [14] ``` Regards, Satoru > > Thanks, > > Paolo ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [BUG] x86: failed to boot a kernel on a Ryzen machine 2017-04-26 11:47 ` Satoru Takeuchi @ 2017-04-26 16:58 ` Paolo Bonzini 2017-04-27 0:42 ` Satoru Takeuchi 0 siblings, 1 reply; 18+ messages in thread From: Paolo Bonzini @ 2017-04-26 16:58 UTC (permalink / raw) To: Satoru Takeuchi Cc: Borislav Petkov, x86, linux-kernel, kvm ML, Jiri Denemark, Dr. David Alan Gilbert On 26/04/2017 13:47, Satoru Takeuchi wrote: > OK, here it is. It looks like the cause is that AMD has removed TBM instructions compared to e.g. Piledriver, so libvirt resorts to a much older base model (thanks to Dave Gilbert for sorting through the list of feature bits). Can you please run this script: http://libvirt.org/git/?p=libvirt.git;a=blob_plain;f=tests/cputestdata/cpu-gather.sh;h=83963557ec4075d351be09e17994ac5300bc5d1f;hb=HEAD and send the output? Thanks, Paolo > ``` > $ cat /proc/cpuinfo > processor : 0 > vendor_id : AuthenticAMD > cpu family : 23 > model : 1 > model name : AMD Ryzen 7 1800X Eight-Core Processor > stepping : 1 > microcode : 0x800111c > cpu MHz : 2200.000 > cache size : 512 KB > physical id : 0 > siblings : 16 > core id : 0 > cpu cores : 8 > apicid : 0 > initial apicid : 0 > fpu : yes > fpu_exception : yes > cpuid level : 13 > wp : yes > flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc extd_apicid aperfmperf eagerfpu pni pclmulqdq monitor ssse3 fma cx16 sse4_1 sse4_2 movbe popcnt aes xsave avx f16c rdrand lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw skinit wdt tce topoext perfctr_core perfctr_nb bpext perfctr_l2 mwaitx hw_pstate vmmcall fsgsbase bmi1 avx2 smep bmi2 rdseed adx smap clflushopt sha_ni xsaveopt xsavec xgetbv1 xsaves clzero irperf arat npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter pfthreshold avic overflow_recov succor smca > bugs : fxsave_leak sysret_ss_attrs null_seg > bogomips : 7186.66 > TLB size : 2560 4K pages > clflush size : 64 > cache_alignment : 64 > address sizes : 48 bits physical, 48 bits virtual > power management: ts ttp tm hwpstate eff_freq_ro [13] [14] > > processor : 1 > vendor_id : AuthenticAMD > cpu family : 23 > model : 1 > model name : AMD Ryzen 7 1800X Eight-Core Processor > stepping : 1 > microcode : 0x800111c > cpu MHz : 2200.000 > cache size : 512 KB > physical id : 0 > siblings : 16 > core id : 0 > cpu cores : 8 > apicid : 1 > initial apicid : 1 > fpu : yes > fpu_exception : yes > cpuid level : 13 > wp : yes > flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc extd_apicid aperfmperf eagerfpu pni pclmulqdq monitor ssse3 fma cx16 sse4_1 sse4_2 movbe popcnt aes xsave avx f16c rdrand lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw skinit wdt tce topoext perfctr_core perfctr_nb bpext perfctr_l2 mwaitx hw_pstate vmmcall fsgsbase bmi1 avx2 smep bmi2 rdseed adx smap clflushopt sha_ni xsaveopt xsavec xgetbv1 xsaves clzero irperf arat npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter pfthreshold avic overflow_recov succor smca > bugs : fxsave_leak sysret_ss_attrs null_seg > bogomips : 7186.66 > TLB size : 2560 4K pages > clflush size : 64 > cache_alignment : 64 > address sizes : 48 bits physical, 48 bits virtual > power management: ts ttp tm hwpstate eff_freq_ro [13] [14] > > processor : 2 > vendor_id : AuthenticAMD > cpu family : 23 > model : 1 > model name : AMD Ryzen 7 1800X Eight-Core Processor > stepping : 1 > microcode : 0x800111c > cpu MHz : 2200.000 > cache size : 512 KB > physical id : 0 > siblings : 16 > core id : 1 > cpu cores : 8 > apicid : 2 > initial apicid : 2 > fpu : yes > fpu_exception : yes > cpuid level : 13 > wp : yes > flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc extd_apicid aperfmperf eagerfpu pni pclmulqdq monitor ssse3 fma cx16 sse4_1 sse4_2 movbe popcnt aes xsave avx f16c rdrand lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw skinit wdt tce topoext perfctr_core perfctr_nb bpext perfctr_l2 mwaitx hw_pstate vmmcall fsgsbase bmi1 avx2 smep bmi2 rdseed adx smap clflushopt sha_ni xsaveopt xsavec xgetbv1 xsaves clzero irperf arat npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter pfthreshold avic overflow_recov succor smca > bugs : fxsave_leak sysret_ss_attrs null_seg > bogomips : 7186.66 > TLB size : 2560 4K pages > clflush size : 64 > cache_alignment : 64 > address sizes : 48 bits physical, 48 bits virtual > power management: ts ttp tm hwpstate eff_freq_ro [13] [14] > > processor : 3 > vendor_id : AuthenticAMD > cpu family : 23 > model : 1 > model name : AMD Ryzen 7 1800X Eight-Core Processor > stepping : 1 > microcode : 0x800111c > cpu MHz : 2200.000 > cache size : 512 KB > physical id : 0 > siblings : 16 > core id : 1 > cpu cores : 8 > apicid : 3 > initial apicid : 3 > fpu : yes > fpu_exception : yes > cpuid level : 13 > wp : yes > flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc extd_apicid aperfmperf eagerfpu pni pclmulqdq monitor ssse3 fma cx16 sse4_1 sse4_2 movbe popcnt aes xsave avx f16c rdrand lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw skinit wdt tce topoext perfctr_core perfctr_nb bpext perfctr_l2 mwaitx hw_pstate vmmcall fsgsbase bmi1 avx2 smep bmi2 rdseed adx smap clflushopt sha_ni xsaveopt xsavec xgetbv1 xsaves clzero irperf arat npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter pfthreshold avic overflow_recov succor smca > bugs : fxsave_leak sysret_ss_attrs null_seg > bogomips : 7186.66 > TLB size : 2560 4K pages > clflush size : 64 > cache_alignment : 64 > address sizes : 48 bits physical, 48 bits virtual > power management: ts ttp tm hwpstate eff_freq_ro [13] [14] > > processor : 4 > vendor_id : AuthenticAMD > cpu family : 23 > model : 1 > model name : AMD Ryzen 7 1800X Eight-Core Processor > stepping : 1 > microcode : 0x800111c > cpu MHz : 2200.000 > cache size : 512 KB > physical id : 0 > siblings : 16 > core id : 2 > cpu cores : 8 > apicid : 4 > initial apicid : 4 > fpu : yes > fpu_exception : yes > cpuid level : 13 > wp : yes > flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc extd_apicid aperfmperf eagerfpu pni pclmulqdq monitor ssse3 fma cx16 sse4_1 sse4_2 movbe popcnt aes xsave avx f16c rdrand lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw skinit wdt tce topoext perfctr_core perfctr_nb bpext perfctr_l2 mwaitx hw_pstate vmmcall fsgsbase bmi1 avx2 smep bmi2 rdseed adx smap clflushopt sha_ni xsaveopt xsavec xgetbv1 xsaves clzero irperf arat npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter pfthreshold avic overflow_recov succor smca > bugs : fxsave_leak sysret_ss_attrs null_seg > bogomips : 7186.66 > TLB size : 2560 4K pages > clflush size : 64 > cache_alignment : 64 > address sizes : 48 bits physical, 48 bits virtual > power management: ts ttp tm hwpstate eff_freq_ro [13] [14] > > processor : 5 > vendor_id : AuthenticAMD > cpu family : 23 > model : 1 > model name : AMD Ryzen 7 1800X Eight-Core Processor > stepping : 1 > microcode : 0x800111c > cpu MHz : 2200.000 > cache size : 512 KB > physical id : 0 > siblings : 16 > core id : 2 > cpu cores : 8 > apicid : 5 > initial apicid : 5 > fpu : yes > fpu_exception : yes > cpuid level : 13 > wp : yes > flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc extd_apicid aperfmperf eagerfpu pni pclmulqdq monitor ssse3 fma cx16 sse4_1 sse4_2 movbe popcnt aes xsave avx f16c rdrand lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw skinit wdt tce topoext perfctr_core perfctr_nb bpext perfctr_l2 mwaitx hw_pstate vmmcall fsgsbase bmi1 avx2 smep bmi2 rdseed adx smap clflushopt sha_ni xsaveopt xsavec xgetbv1 xsaves clzero irperf arat npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter pfthreshold avic overflow_recov succor smca > bugs : fxsave_leak sysret_ss_attrs null_seg > bogomips : 7186.66 > TLB size : 2560 4K pages > clflush size : 64 > cache_alignment : 64 > address sizes : 48 bits physical, 48 bits virtual > power management: ts ttp tm hwpstate eff_freq_ro [13] [14] > > processor : 6 > vendor_id : AuthenticAMD > cpu family : 23 > model : 1 > model name : AMD Ryzen 7 1800X Eight-Core Processor > stepping : 1 > microcode : 0x800111c > cpu MHz : 2200.000 > cache size : 512 KB > physical id : 0 > siblings : 16 > core id : 3 > cpu cores : 8 > apicid : 6 > initial apicid : 6 > fpu : yes > fpu_exception : yes > cpuid level : 13 > wp : yes > flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc extd_apicid aperfmperf eagerfpu pni pclmulqdq monitor ssse3 fma cx16 sse4_1 sse4_2 movbe popcnt aes xsave avx f16c rdrand lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw skinit wdt tce topoext perfctr_core perfctr_nb bpext perfctr_l2 mwaitx hw_pstate vmmcall fsgsbase bmi1 avx2 smep bmi2 rdseed adx smap clflushopt sha_ni xsaveopt xsavec xgetbv1 xsaves clzero irperf arat npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter pfthreshold avic overflow_recov succor smca > bugs : fxsave_leak sysret_ss_attrs null_seg > bogomips : 7186.66 > TLB size : 2560 4K pages > clflush size : 64 > cache_alignment : 64 > address sizes : 48 bits physical, 48 bits virtual > power management: ts ttp tm hwpstate eff_freq_ro [13] [14] > > processor : 7 > vendor_id : AuthenticAMD > cpu family : 23 > model : 1 > model name : AMD Ryzen 7 1800X Eight-Core Processor > stepping : 1 > microcode : 0x800111c > cpu MHz : 2200.000 > cache size : 512 KB > physical id : 0 > siblings : 16 > core id : 3 > cpu cores : 8 > apicid : 7 > initial apicid : 7 > fpu : yes > fpu_exception : yes > cpuid level : 13 > wp : yes > flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc extd_apicid aperfmperf eagerfpu pni pclmulqdq monitor ssse3 fma cx16 sse4_1 sse4_2 movbe popcnt aes xsave avx f16c rdrand lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw skinit wdt tce topoext perfctr_core perfctr_nb bpext perfctr_l2 mwaitx hw_pstate vmmcall fsgsbase bmi1 avx2 smep bmi2 rdseed adx smap clflushopt sha_ni xsaveopt xsavec xgetbv1 xsaves clzero irperf arat npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter pfthreshold avic overflow_recov succor smca > bugs : fxsave_leak sysret_ss_attrs null_seg > bogomips : 7186.66 > TLB size : 2560 4K pages > clflush size : 64 > cache_alignment : 64 > address sizes : 48 bits physical, 48 bits virtual > power management: ts ttp tm hwpstate eff_freq_ro [13] [14] > > processor : 8 > vendor_id : AuthenticAMD > cpu family : 23 > model : 1 > model name : AMD Ryzen 7 1800X Eight-Core Processor > stepping : 1 > microcode : 0x800111c > cpu MHz : 2200.000 > cache size : 512 KB > physical id : 0 > siblings : 16 > core id : 4 > cpu cores : 8 > apicid : 8 > initial apicid : 8 > fpu : yes > fpu_exception : yes > cpuid level : 13 > wp : yes > flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc extd_apicid aperfmperf eagerfpu pni pclmulqdq monitor ssse3 fma cx16 sse4_1 sse4_2 movbe popcnt aes xsave avx f16c rdrand lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw skinit wdt tce topoext perfctr_core perfctr_nb bpext perfctr_l2 mwaitx hw_pstate vmmcall fsgsbase bmi1 avx2 smep bmi2 rdseed adx smap clflushopt sha_ni xsaveopt xsavec xgetbv1 xsaves clzero irperf arat npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter pfthreshold avic overflow_recov succor smca > bugs : fxsave_leak sysret_ss_attrs null_seg > bogomips : 7186.66 > TLB size : 2560 4K pages > clflush size : 64 > cache_alignment : 64 > address sizes : 48 bits physical, 48 bits virtual > power management: ts ttp tm hwpstate eff_freq_ro [13] [14] > > processor : 9 > vendor_id : AuthenticAMD > cpu family : 23 > model : 1 > model name : AMD Ryzen 7 1800X Eight-Core Processor > stepping : 1 > microcode : 0x800111c > cpu MHz : 2200.000 > cache size : 512 KB > physical id : 0 > siblings : 16 > core id : 4 > cpu cores : 8 > apicid : 9 > initial apicid : 9 > fpu : yes > fpu_exception : yes > cpuid level : 13 > wp : yes > flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc extd_apicid aperfmperf eagerfpu pni pclmulqdq monitor ssse3 fma cx16 sse4_1 sse4_2 movbe popcnt aes xsave avx f16c rdrand lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw skinit wdt tce topoext perfctr_core perfctr_nb bpext perfctr_l2 mwaitx hw_pstate vmmcall fsgsbase bmi1 avx2 smep bmi2 rdseed adx smap clflushopt sha_ni xsaveopt xsavec xgetbv1 xsaves clzero irperf arat npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter pfthreshold avic overflow_recov succor smca > bugs : fxsave_leak sysret_ss_attrs null_seg > bogomips : 7186.66 > TLB size : 2560 4K pages > clflush size : 64 > cache_alignment : 64 > address sizes : 48 bits physical, 48 bits virtual > power management: ts ttp tm hwpstate eff_freq_ro [13] [14] > > processor : 10 > vendor_id : AuthenticAMD > cpu family : 23 > model : 1 > model name : AMD Ryzen 7 1800X Eight-Core Processor > stepping : 1 > microcode : 0x800111c > cpu MHz : 2200.000 > cache size : 512 KB > physical id : 0 > siblings : 16 > core id : 5 > cpu cores : 8 > apicid : 10 > initial apicid : 10 > fpu : yes > fpu_exception : yes > cpuid level : 13 > wp : yes > flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc extd_apicid aperfmperf eagerfpu pni pclmulqdq monitor ssse3 fma cx16 sse4_1 sse4_2 movbe popcnt aes xsave avx f16c rdrand lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw skinit wdt tce topoext perfctr_core perfctr_nb bpext perfctr_l2 mwaitx hw_pstate vmmcall fsgsbase bmi1 avx2 smep bmi2 rdseed adx smap clflushopt sha_ni xsaveopt xsavec xgetbv1 xsaves clzero irperf arat npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter pfthreshold avic overflow_recov succor smca > bugs : fxsave_leak sysret_ss_attrs null_seg > bogomips : 7186.66 > TLB size : 2560 4K pages > clflush size : 64 > cache_alignment : 64 > address sizes : 48 bits physical, 48 bits virtual > power management: ts ttp tm hwpstate eff_freq_ro [13] [14] > > processor : 11 > vendor_id : AuthenticAMD > cpu family : 23 > model : 1 > model name : AMD Ryzen 7 1800X Eight-Core Processor > stepping : 1 > microcode : 0x800111c > cpu MHz : 2200.000 > cache size : 512 KB > physical id : 0 > siblings : 16 > core id : 5 > cpu cores : 8 > apicid : 11 > initial apicid : 11 > fpu : yes > fpu_exception : yes > cpuid level : 13 > wp : yes > flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc extd_apicid aperfmperf eagerfpu pni pclmulqdq monitor ssse3 fma cx16 sse4_1 sse4_2 movbe popcnt aes xsave avx f16c rdrand lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw skinit wdt tce topoext perfctr_core perfctr_nb bpext perfctr_l2 mwaitx hw_pstate vmmcall fsgsbase bmi1 avx2 smep bmi2 rdseed adx smap clflushopt sha_ni xsaveopt xsavec xgetbv1 xsaves clzero irperf arat npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter pfthreshold avic overflow_recov succor smca > bugs : fxsave_leak sysret_ss_attrs null_seg > bogomips : 7186.66 > TLB size : 2560 4K pages > clflush size : 64 > cache_alignment : 64 > address sizes : 48 bits physical, 48 bits virtual > power management: ts ttp tm hwpstate eff_freq_ro [13] [14] > > processor : 12 > vendor_id : AuthenticAMD > cpu family : 23 > model : 1 > model name : AMD Ryzen 7 1800X Eight-Core Processor > stepping : 1 > microcode : 0x800111c > cpu MHz : 2200.000 > cache size : 512 KB > physical id : 0 > siblings : 16 > core id : 6 > cpu cores : 8 > apicid : 12 > initial apicid : 12 > fpu : yes > fpu_exception : yes > cpuid level : 13 > wp : yes > flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc extd_apicid aperfmperf eagerfpu pni pclmulqdq monitor ssse3 fma cx16 sse4_1 sse4_2 movbe popcnt aes xsave avx f16c rdrand lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw skinit wdt tce topoext perfctr_core perfctr_nb bpext perfctr_l2 mwaitx hw_pstate vmmcall fsgsbase bmi1 avx2 smep bmi2 rdseed adx smap clflushopt sha_ni xsaveopt xsavec xgetbv1 xsaves clzero irperf arat npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter pfthreshold avic overflow_recov succor smca > bugs : fxsave_leak sysret_ss_attrs null_seg > bogomips : 7186.66 > TLB size : 2560 4K pages > clflush size : 64 > cache_alignment : 64 > address sizes : 48 bits physical, 48 bits virtual > power management: ts ttp tm hwpstate eff_freq_ro [13] [14] > > processor : 13 > vendor_id : AuthenticAMD > cpu family : 23 > model : 1 > model name : AMD Ryzen 7 1800X Eight-Core Processor > stepping : 1 > microcode : 0x800111c > cpu MHz : 2200.000 > cache size : 512 KB > physical id : 0 > siblings : 16 > core id : 6 > cpu cores : 8 > apicid : 13 > initial apicid : 13 > fpu : yes > fpu_exception : yes > cpuid level : 13 > wp : yes > flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc extd_apicid aperfmperf eagerfpu pni pclmulqdq monitor ssse3 fma cx16 sse4_1 sse4_2 movbe popcnt aes xsave avx f16c rdrand lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw skinit wdt tce topoext perfctr_core perfctr_nb bpext perfctr_l2 mwaitx hw_pstate vmmcall fsgsbase bmi1 avx2 smep bmi2 rdseed adx smap clflushopt sha_ni xsaveopt xsavec xgetbv1 xsaves clzero irperf arat npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter pfthreshold avic overflow_recov succor smca > bugs : fxsave_leak sysret_ss_attrs null_seg > bogomips : 7186.66 > TLB size : 2560 4K pages > clflush size : 64 > cache_alignment : 64 > address sizes : 48 bits physical, 48 bits virtual > power management: ts ttp tm hwpstate eff_freq_ro [13] [14] > > processor : 14 > vendor_id : AuthenticAMD > cpu family : 23 > model : 1 > model name : AMD Ryzen 7 1800X Eight-Core Processor > stepping : 1 > microcode : 0x800111c > cpu MHz : 2200.000 > cache size : 512 KB > physical id : 0 > siblings : 16 > core id : 7 > cpu cores : 8 > apicid : 14 > initial apicid : 14 > fpu : yes > fpu_exception : yes > cpuid level : 13 > wp : yes > flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc extd_apicid aperfmperf eagerfpu pni pclmulqdq monitor ssse3 fma cx16 sse4_1 sse4_2 movbe popcnt aes xsave avx f16c rdrand lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw skinit wdt tce topoext perfctr_core perfctr_nb bpext perfctr_l2 mwaitx hw_pstate vmmcall fsgsbase bmi1 avx2 smep bmi2 rdseed adx smap clflushopt sha_ni xsaveopt xsavec xgetbv1 xsaves clzero irperf arat npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter pfthreshold avic overflow_recov succor smca > bugs : fxsave_leak sysret_ss_attrs null_seg > bogomips : 7186.66 > TLB size : 2560 4K pages > clflush size : 64 > cache_alignment : 64 > address sizes : 48 bits physical, 48 bits virtual > power management: ts ttp tm hwpstate eff_freq_ro [13] [14] > > processor : 15 > vendor_id : AuthenticAMD > cpu family : 23 > model : 1 > model name : AMD Ryzen 7 1800X Eight-Core Processor > stepping : 1 > microcode : 0x800111c > cpu MHz : 2200.000 > cache size : 512 KB > physical id : 0 > siblings : 16 > core id : 7 > cpu cores : 8 > apicid : 15 > initial apicid : 15 > fpu : yes > fpu_exception : yes > cpuid level : 13 > wp : yes > flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc extd_apicid aperfmperf eagerfpu pni pclmulqdq monitor ssse3 fma cx16 sse4_1 sse4_2 movbe popcnt aes xsave avx f16c rdrand lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw skinit wdt tce topoext perfctr_core perfctr_nb bpext perfctr_l2 mwaitx hw_pstate vmmcall fsgsbase bmi1 avx2 smep bmi2 rdseed adx smap clflushopt sha_ni xsaveopt xsavec xgetbv1 xsaves clzero irperf arat npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter pfthreshold avic overflow_recov succor smca > bugs : fxsave_leak sysret_ss_attrs null_seg > bogomips : 7186.66 > TLB size : 2560 4K pages > clflush size : 64 > cache_alignment : 64 > address sizes : 48 bits physical, 48 bits virtual > power management: ts ttp tm hwpstate eff_freq_ro [13] [14] > > ``` > > Regards, > Satoru > > >> >> Thanks, >> >> Paolo ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [BUG] x86: failed to boot a kernel on a Ryzen machine 2017-04-26 16:58 ` Paolo Bonzini @ 2017-04-27 0:42 ` Satoru Takeuchi 2017-04-28 13:34 ` Paolo Bonzini 0 siblings, 1 reply; 18+ messages in thread From: Satoru Takeuchi @ 2017-04-27 0:42 UTC (permalink / raw) To: Paolo Bonzini Cc: Satoru Takeuchi, Borislav Petkov, x86, linux-kernel, kvm ML, Jiri Denemark, Dr. David Alan Gilbert At Wed, 26 Apr 2017 18:58:27 +0200, Paolo Bonzini wrote: > > > > On 26/04/2017 13:47, Satoru Takeuchi wrote: > > OK, here it is. > > It looks like the cause is that AMD has removed TBM instructions > compared to e.g. Piledriver, so libvirt resorts to a much older base > model (thanks to Dave Gilbert for sorting through the list of feature bits). > > Can you please run this script: > > http://libvirt.org/git/?p=libvirt.git;a=blob_plain;f=tests/cputestdata/cpu-gather.sh;h=83963557ec4075d351be09e17994ac5300bc5d1f;hb=HEAD > > and send the output? OK. Here is the result. ``` # bash tests-cputestdata-cpu-gather.sh model name : AMD Ryzen 7 1800X Eight-Core Processor CPU: 0x00000000 0x00: eax=0x0000000d ebx=0x68747541 ecx=0x444d4163 edx=0x69746e65 0x00000001 0x00: eax=0x00800f11 ebx=0x09100800 ecx=0x7ed8320b edx=0x178bfbff 0x00000002 0x00: eax=0x00000000 ebx=0x00000000 ecx=0x00000000 edx=0x00000000 0x00000003 0x00: eax=0x00000000 ebx=0x00000000 ecx=0x00000000 edx=0x00000000 0x00000005 0x00: eax=0x00000040 ebx=0x00000040 ecx=0x00000003 edx=0x00000000 0x00000006 0x00: eax=0x00000004 ebx=0x00000000 ecx=0x00000001 edx=0x00000000 0x00000007 0x00: eax=0x00000000 ebx=0x209c01a9 ecx=0x00000000 edx=0x00000000 0x00000008 0x00: eax=0x00000000 ebx=0x00000000 ecx=0x00000000 edx=0x00000000 0x00000009 0x00: eax=0x00000000 ebx=0x00000000 ecx=0x00000000 edx=0x00000000 0x0000000a 0x00: eax=0x00000000 ebx=0x00000000 ecx=0x00000000 edx=0x00000000 0x0000000c 0x00: eax=0x00000000 ebx=0x00000000 ecx=0x00000000 edx=0x00000000 0x0000000d 0x00: eax=0x00000007 ebx=0x00000340 ecx=0x00000340 edx=0x00000000 0x0000000d 0x01: eax=0x0000000f ebx=0x00000340 ecx=0x00000000 edx=0x00000000 0x0000000d 0x02: eax=0x00000100 ebx=0x00000240 ecx=0x00000000 edx=0x00000000 0x0000000d 0x03: eax=0x00000000 ebx=0x00000000 ecx=0x00000000 edx=0x00000000 0x80000000 0x00: eax=0x8000001f ebx=0x68747541 ecx=0x444d4163 edx=0x69746e65 0x80000001 0x00: eax=0x00800f11 ebx=0x20000000 ecx=0x35c233ff edx=0x2fd3fbff 0x80000002 0x00: eax=0x20444d41 ebx=0x657a7952 ecx=0x2037206e edx=0x30303831 0x80000003 0x00: eax=0x69452058 ebx=0x2d746867 ecx=0x65726f43 edx=0x6f725020 0x80000004 0x00: eax=0x73736563 ebx=0x2020726f ecx=0x20202020 edx=0x00202020 0x80000005 0x00: eax=0xff40ff40 ebx=0xff40ff40 ecx=0x20080140 edx=0x40040140 0x80000006 0x00: eax=0x26006400 ebx=0x66006400 ecx=0x02006140 edx=0x00808140 0x80000007 0x00: eax=0x00000000 ebx=0x0000001b ecx=0x00000000 edx=0x00006599 0x80000008 0x00: eax=0x00003030 ebx=0x00000007 ecx=0x0000400f edx=0x00000000 0x80000009 0x00: eax=0x00000000 ebx=0x00000000 ecx=0x00000000 edx=0x00000000 0x8000000a 0x00: eax=0x00000001 ebx=0x00008000 ecx=0x00000000 edx=0x0001bcff 0x8000000b 0x00: eax=0x00000000 ebx=0x00000000 ecx=0x00000000 edx=0x00000000 0x8000000c 0x00: eax=0x00000000 ebx=0x00000000 ecx=0x00000000 edx=0x00000000 0x8000000d 0x00: eax=0x00000000 ebx=0x00000000 ecx=0x00000000 edx=0x00000000 0x8000000e 0x00: eax=0x00000000 ebx=0x00000000 ecx=0x00000000 edx=0x00000000 0x8000000f 0x00: eax=0x00000000 ebx=0x00000000 ecx=0x00000000 edx=0x00000000 0x80000010 0x00: eax=0x00000000 ebx=0x00000000 ecx=0x00000000 edx=0x00000000 0x80000011 0x00: eax=0x00000000 ebx=0x00000000 ecx=0x00000000 edx=0x00000000 0x80000012 0x00: eax=0x00000000 ebx=0x00000000 ecx=0x00000000 edx=0x00000000 0x80000013 0x00: eax=0x00000000 ebx=0x00000000 ecx=0x00000000 edx=0x00000000 0x80000014 0x00: eax=0x00000000 ebx=0x00000000 ecx=0x00000000 edx=0x00000000 0x80000015 0x00: eax=0x00000000 ebx=0x00000000 ecx=0x00000000 edx=0x00000000 0x80000016 0x00: eax=0x00000000 ebx=0x00000000 ecx=0x00000000 edx=0x00000000 0x80000017 0x00: eax=0x00000000 ebx=0x00000000 ecx=0x00000000 edx=0x00000000 0x80000018 0x00: eax=0x00000000 ebx=0x00000000 ecx=0x00000000 edx=0x00000000 0x80000019 0x00: eax=0xf040f040 ebx=0x00000000 ecx=0x00000000 edx=0x00000000 0x8000001a 0x00: eax=0x00000003 ebx=0x00000000 ecx=0x00000000 edx=0x00000000 0x8000001b 0x00: eax=0x000003ff ebx=0x00000000 ecx=0x00000000 edx=0x00000000 0x8000001c 0x00: eax=0x00000000 ebx=0x00000000 ecx=0x00000000 edx=0x00000000 0x8000001d 0x00: eax=0x00004121 ebx=0x01c0003f ecx=0x0000003f edx=0x00000000 0x8000001e 0x00: eax=0x00000009 ebx=0x00000104 ecx=0x00000000 edx=0x00000000 0x8000001f 0x00: eax=0x00000007 ebx=0x0000016f ecx=0x0000000f edx=0x00000000 0x80860000 0x00: eax=0x00000000 ebx=0x00000000 ecx=0x00000000 edx=0x00000000 0xc0000000 0x00: eax=0x00000000 ebx=0x00000000 ecx=0x00000000 edx=0x00000000 warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 0] warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 1] warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 2] warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 3] warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 4] warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 5] warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 6] warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 7] warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 8] warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 9] warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 12] warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 13] warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 14] warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 15] warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 16] warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 17] warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 23] warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 24] {"QMP": {"version": {"qemu": {"micro": 0, "minor": 5, "major": 2}, "package": " (Debian 1:2.5+dfsg-5ubuntu10.11)"}, "capabilities": []}} warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 0] warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 1] warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 2] warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 3] warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 4] warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 5] warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 6] warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 7] warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 8] warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 9] warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 12] warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 13] warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 14] warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 15] warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 16] warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 17] warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 23] warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 24] {"return": {}} {"return": [{"cpuid-register": "EAX", "cpuid-input-eax": 6, "features": 4}, {"cpuid-register": "EAX", "cpuid-input-ecx": 1, "cpuid-input-eax": 13, "features": 7}, {"cpuid-register": "EDX", "cpuid-input-eax": 2147483658, "features": 9}, {"cpuid-register": "EAX", "cpuid-input-eax": 1073741825, "features": 16777467}, {"cpuid-register": "EDX", "cpuid-input-eax": 3221225473, "features": 0}, {"cpuid-register": "EDX", "cpuid-input-eax": 2147483655, "features": 0}, {"cpuid-register": "ECX", "cpuid-input-eax": 2147483649, "features": 1015}, {"cpuid-register": "EDX", "cpuid-input-eax": 2147483649, "features": 776996864}, {"cpuid-register": "EBX", "cpuid-input-ecx": 0, "cpuid-input-eax": 7, "features": 10224043}, {"cpuid-register": "ECX", "cpuid-input-eax": 1, "features": 4160238083}, {"cpuid-register": "EDX", "cpuid-input-eax": 1, "features": 126614527}], "id": "feature-words"} {"return": 23, "id": "family"} {"return": 1, "id": "model"} {"return": 1, "id": "stepping"} {"return": "AMD Ryzen 7 1800X Eight-Core Processor ", "id": "model-id"} {"return": {}} {"timestamp": {"seconds": 1493253066, "microseconds": 721689}, "event": "SHUTDOWN"} # ``` Thanks, Satoru > > Thanks, > > Paolo > > > ``` > > $ cat /proc/cpuinfo > > processor : 0 > > vendor_id : AuthenticAMD > > cpu family : 23 > > model : 1 > > model name : AMD Ryzen 7 1800X Eight-Core Processor > > stepping : 1 > > microcode : 0x800111c > > cpu MHz : 2200.000 > > cache size : 512 KB > > physical id : 0 > > siblings : 16 > > core id : 0 > > cpu cores : 8 > > apicid : 0 > > initial apicid : 0 > > fpu : yes > > fpu_exception : yes > > cpuid level : 13 > > wp : yes > > flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc extd_apicid aperfmperf eagerfpu pni pclmulqdq monitor ssse3 fma cx16 sse4_1 sse4_2 movbe popcnt aes xsave avx f16c rdrand lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw skinit wdt tce topoext perfctr_core perfctr_nb bpext perfctr_l2 mwaitx hw_pstate vmmcall fsgsbase bmi1 avx2 smep bmi2 rdseed adx smap clflushopt sha_ni xsaveopt xsavec xgetbv1 xsaves clzero irperf arat npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter pfthreshold avic overflow_recov succor smca > > bugs : fxsave_leak sysret_ss_attrs null_seg > > bogomips : 7186.66 > > TLB size : 2560 4K pages > > clflush size : 64 > > cache_alignment : 64 > > address sizes : 48 bits physical, 48 bits virtual > > power management: ts ttp tm hwpstate eff_freq_ro [13] [14] > > > > processor : 1 > > vendor_id : AuthenticAMD > > cpu family : 23 > > model : 1 > > model name : AMD Ryzen 7 1800X Eight-Core Processor > > stepping : 1 > > microcode : 0x800111c > > cpu MHz : 2200.000 > > cache size : 512 KB > > physical id : 0 > > siblings : 16 > > core id : 0 > > cpu cores : 8 > > apicid : 1 > > initial apicid : 1 > > fpu : yes > > fpu_exception : yes > > cpuid level : 13 > > wp : yes > > flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc extd_apicid aperfmperf eagerfpu pni pclmulqdq monitor ssse3 fma cx16 sse4_1 sse4_2 movbe popcnt aes xsave avx f16c rdrand lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw skinit wdt tce topoext perfctr_core perfctr_nb bpext perfctr_l2 mwaitx hw_pstate vmmcall fsgsbase bmi1 avx2 smep bmi2 rdseed adx smap clflushopt sha_ni xsaveopt xsavec xgetbv1 xsaves clzero irperf arat npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter pfthreshold avic overflow_recov succor smca > > bugs : fxsave_leak sysret_ss_attrs null_seg > > bogomips : 7186.66 > > TLB size : 2560 4K pages > > clflush size : 64 > > cache_alignment : 64 > > address sizes : 48 bits physical, 48 bits virtual > > power management: ts ttp tm hwpstate eff_freq_ro [13] [14] > > > > processor : 2 > > vendor_id : AuthenticAMD > > cpu family : 23 > > model : 1 > > model name : AMD Ryzen 7 1800X Eight-Core Processor > > stepping : 1 > > microcode : 0x800111c > > cpu MHz : 2200.000 > > cache size : 512 KB > > physical id : 0 > > siblings : 16 > > core id : 1 > > cpu cores : 8 > > apicid : 2 > > initial apicid : 2 > > fpu : yes > > fpu_exception : yes > > cpuid level : 13 > > wp : yes > > flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc extd_apicid aperfmperf eagerfpu pni pclmulqdq monitor ssse3 fma cx16 sse4_1 sse4_2 movbe popcnt aes xsave avx f16c rdrand lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw skinit wdt tce topoext perfctr_core perfctr_nb bpext perfctr_l2 mwaitx hw_pstate vmmcall fsgsbase bmi1 avx2 smep bmi2 rdseed adx smap clflushopt sha_ni xsaveopt xsavec xgetbv1 xsaves clzero irperf arat npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter pfthreshold avic overflow_recov succor smca > > bugs : fxsave_leak sysret_ss_attrs null_seg > > bogomips : 7186.66 > > TLB size : 2560 4K pages > > clflush size : 64 > > cache_alignment : 64 > > address sizes : 48 bits physical, 48 bits virtual > > power management: ts ttp tm hwpstate eff_freq_ro [13] [14] > > > > processor : 3 > > vendor_id : AuthenticAMD > > cpu family : 23 > > model : 1 > > model name : AMD Ryzen 7 1800X Eight-Core Processor > > stepping : 1 > > microcode : 0x800111c > > cpu MHz : 2200.000 > > cache size : 512 KB > > physical id : 0 > > siblings : 16 > > core id : 1 > > cpu cores : 8 > > apicid : 3 > > initial apicid : 3 > > fpu : yes > > fpu_exception : yes > > cpuid level : 13 > > wp : yes > > flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc extd_apicid aperfmperf eagerfpu pni pclmulqdq monitor ssse3 fma cx16 sse4_1 sse4_2 movbe popcnt aes xsave avx f16c rdrand lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw skinit wdt tce topoext perfctr_core perfctr_nb bpext perfctr_l2 mwaitx hw_pstate vmmcall fsgsbase bmi1 avx2 smep bmi2 rdseed adx smap clflushopt sha_ni xsaveopt xsavec xgetbv1 xsaves clzero irperf arat npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter pfthreshold avic overflow_recov succor smca > > bugs : fxsave_leak sysret_ss_attrs null_seg > > bogomips : 7186.66 > > TLB size : 2560 4K pages > > clflush size : 64 > > cache_alignment : 64 > > address sizes : 48 bits physical, 48 bits virtual > > power management: ts ttp tm hwpstate eff_freq_ro [13] [14] > > > > processor : 4 > > vendor_id : AuthenticAMD > > cpu family : 23 > > model : 1 > > model name : AMD Ryzen 7 1800X Eight-Core Processor > > stepping : 1 > > microcode : 0x800111c > > cpu MHz : 2200.000 > > cache size : 512 KB > > physical id : 0 > > siblings : 16 > > core id : 2 > > cpu cores : 8 > > apicid : 4 > > initial apicid : 4 > > fpu : yes > > fpu_exception : yes > > cpuid level : 13 > > wp : yes > > flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc extd_apicid aperfmperf eagerfpu pni pclmulqdq monitor ssse3 fma cx16 sse4_1 sse4_2 movbe popcnt aes xsave avx f16c rdrand lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw skinit wdt tce topoext perfctr_core perfctr_nb bpext perfctr_l2 mwaitx hw_pstate vmmcall fsgsbase bmi1 avx2 smep bmi2 rdseed adx smap clflushopt sha_ni xsaveopt xsavec xgetbv1 xsaves clzero irperf arat npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter pfthreshold avic overflow_recov succor smca > > bugs : fxsave_leak sysret_ss_attrs null_seg > > bogomips : 7186.66 > > TLB size : 2560 4K pages > > clflush size : 64 > > cache_alignment : 64 > > address sizes : 48 bits physical, 48 bits virtual > > power management: ts ttp tm hwpstate eff_freq_ro [13] [14] > > > > processor : 5 > > vendor_id : AuthenticAMD > > cpu family : 23 > > model : 1 > > model name : AMD Ryzen 7 1800X Eight-Core Processor > > stepping : 1 > > microcode : 0x800111c > > cpu MHz : 2200.000 > > cache size : 512 KB > > physical id : 0 > > siblings : 16 > > core id : 2 > > cpu cores : 8 > > apicid : 5 > > initial apicid : 5 > > fpu : yes > > fpu_exception : yes > > cpuid level : 13 > > wp : yes > > flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc extd_apicid aperfmperf eagerfpu pni pclmulqdq monitor ssse3 fma cx16 sse4_1 sse4_2 movbe popcnt aes xsave avx f16c rdrand lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw skinit wdt tce topoext perfctr_core perfctr_nb bpext perfctr_l2 mwaitx hw_pstate vmmcall fsgsbase bmi1 avx2 smep bmi2 rdseed adx smap clflushopt sha_ni xsaveopt xsavec xgetbv1 xsaves clzero irperf arat npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter pfthreshold avic overflow_recov succor smca > > bugs : fxsave_leak sysret_ss_attrs null_seg > > bogomips : 7186.66 > > TLB size : 2560 4K pages > > clflush size : 64 > > cache_alignment : 64 > > address sizes : 48 bits physical, 48 bits virtual > > power management: ts ttp tm hwpstate eff_freq_ro [13] [14] > > > > processor : 6 > > vendor_id : AuthenticAMD > > cpu family : 23 > > model : 1 > > model name : AMD Ryzen 7 1800X Eight-Core Processor > > stepping : 1 > > microcode : 0x800111c > > cpu MHz : 2200.000 > > cache size : 512 KB > > physical id : 0 > > siblings : 16 > > core id : 3 > > cpu cores : 8 > > apicid : 6 > > initial apicid : 6 > > fpu : yes > > fpu_exception : yes > > cpuid level : 13 > > wp : yes > > flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc extd_apicid aperfmperf eagerfpu pni pclmulqdq monitor ssse3 fma cx16 sse4_1 sse4_2 movbe popcnt aes xsave avx f16c rdrand lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw skinit wdt tce topoext perfctr_core perfctr_nb bpext perfctr_l2 mwaitx hw_pstate vmmcall fsgsbase bmi1 avx2 smep bmi2 rdseed adx smap clflushopt sha_ni xsaveopt xsavec xgetbv1 xsaves clzero irperf arat npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter pfthreshold avic overflow_recov succor smca > > bugs : fxsave_leak sysret_ss_attrs null_seg > > bogomips : 7186.66 > > TLB size : 2560 4K pages > > clflush size : 64 > > cache_alignment : 64 > > address sizes : 48 bits physical, 48 bits virtual > > power management: ts ttp tm hwpstate eff_freq_ro [13] [14] > > > > processor : 7 > > vendor_id : AuthenticAMD > > cpu family : 23 > > model : 1 > > model name : AMD Ryzen 7 1800X Eight-Core Processor > > stepping : 1 > > microcode : 0x800111c > > cpu MHz : 2200.000 > > cache size : 512 KB > > physical id : 0 > > siblings : 16 > > core id : 3 > > cpu cores : 8 > > apicid : 7 > > initial apicid : 7 > > fpu : yes > > fpu_exception : yes > > cpuid level : 13 > > wp : yes > > flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc extd_apicid aperfmperf eagerfpu pni pclmulqdq monitor ssse3 fma cx16 sse4_1 sse4_2 movbe popcnt aes xsave avx f16c rdrand lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw skinit wdt tce topoext perfctr_core perfctr_nb bpext perfctr_l2 mwaitx hw_pstate vmmcall fsgsbase bmi1 avx2 smep bmi2 rdseed adx smap clflushopt sha_ni xsaveopt xsavec xgetbv1 xsaves clzero irperf arat npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter pfthreshold avic overflow_recov succor smca > > bugs : fxsave_leak sysret_ss_attrs null_seg > > bogomips : 7186.66 > > TLB size : 2560 4K pages > > clflush size : 64 > > cache_alignment : 64 > > address sizes : 48 bits physical, 48 bits virtual > > power management: ts ttp tm hwpstate eff_freq_ro [13] [14] > > > > processor : 8 > > vendor_id : AuthenticAMD > > cpu family : 23 > > model : 1 > > model name : AMD Ryzen 7 1800X Eight-Core Processor > > stepping : 1 > > microcode : 0x800111c > > cpu MHz : 2200.000 > > cache size : 512 KB > > physical id : 0 > > siblings : 16 > > core id : 4 > > cpu cores : 8 > > apicid : 8 > > initial apicid : 8 > > fpu : yes > > fpu_exception : yes > > cpuid level : 13 > > wp : yes > > flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc extd_apicid aperfmperf eagerfpu pni pclmulqdq monitor ssse3 fma cx16 sse4_1 sse4_2 movbe popcnt aes xsave avx f16c rdrand lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw skinit wdt tce topoext perfctr_core perfctr_nb bpext perfctr_l2 mwaitx hw_pstate vmmcall fsgsbase bmi1 avx2 smep bmi2 rdseed adx smap clflushopt sha_ni xsaveopt xsavec xgetbv1 xsaves clzero irperf arat npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter pfthreshold avic overflow_recov succor smca > > bugs : fxsave_leak sysret_ss_attrs null_seg > > bogomips : 7186.66 > > TLB size : 2560 4K pages > > clflush size : 64 > > cache_alignment : 64 > > address sizes : 48 bits physical, 48 bits virtual > > power management: ts ttp tm hwpstate eff_freq_ro [13] [14] > > > > processor : 9 > > vendor_id : AuthenticAMD > > cpu family : 23 > > model : 1 > > model name : AMD Ryzen 7 1800X Eight-Core Processor > > stepping : 1 > > microcode : 0x800111c > > cpu MHz : 2200.000 > > cache size : 512 KB > > physical id : 0 > > siblings : 16 > > core id : 4 > > cpu cores : 8 > > apicid : 9 > > initial apicid : 9 > > fpu : yes > > fpu_exception : yes > > cpuid level : 13 > > wp : yes > > flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc extd_apicid aperfmperf eagerfpu pni pclmulqdq monitor ssse3 fma cx16 sse4_1 sse4_2 movbe popcnt aes xsave avx f16c rdrand lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw skinit wdt tce topoext perfctr_core perfctr_nb bpext perfctr_l2 mwaitx hw_pstate vmmcall fsgsbase bmi1 avx2 smep bmi2 rdseed adx smap clflushopt sha_ni xsaveopt xsavec xgetbv1 xsaves clzero irperf arat npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter pfthreshold avic overflow_recov succor smca > > bugs : fxsave_leak sysret_ss_attrs null_seg > > bogomips : 7186.66 > > TLB size : 2560 4K pages > > clflush size : 64 > > cache_alignment : 64 > > address sizes : 48 bits physical, 48 bits virtual > > power management: ts ttp tm hwpstate eff_freq_ro [13] [14] > > > > processor : 10 > > vendor_id : AuthenticAMD > > cpu family : 23 > > model : 1 > > model name : AMD Ryzen 7 1800X Eight-Core Processor > > stepping : 1 > > microcode : 0x800111c > > cpu MHz : 2200.000 > > cache size : 512 KB > > physical id : 0 > > siblings : 16 > > core id : 5 > > cpu cores : 8 > > apicid : 10 > > initial apicid : 10 > > fpu : yes > > fpu_exception : yes > > cpuid level : 13 > > wp : yes > > flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc extd_apicid aperfmperf eagerfpu pni pclmulqdq monitor ssse3 fma cx16 sse4_1 sse4_2 movbe popcnt aes xsave avx f16c rdrand lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw skinit wdt tce topoext perfctr_core perfctr_nb bpext perfctr_l2 mwaitx hw_pstate vmmcall fsgsbase bmi1 avx2 smep bmi2 rdseed adx smap clflushopt sha_ni xsaveopt xsavec xgetbv1 xsaves clzero irperf arat npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter pfthreshold avic overflow_recov succor smca > > bugs : fxsave_leak sysret_ss_attrs null_seg > > bogomips : 7186.66 > > TLB size : 2560 4K pages > > clflush size : 64 > > cache_alignment : 64 > > address sizes : 48 bits physical, 48 bits virtual > > power management: ts ttp tm hwpstate eff_freq_ro [13] [14] > > > > processor : 11 > > vendor_id : AuthenticAMD > > cpu family : 23 > > model : 1 > > model name : AMD Ryzen 7 1800X Eight-Core Processor > > stepping : 1 > > microcode : 0x800111c > > cpu MHz : 2200.000 > > cache size : 512 KB > > physical id : 0 > > siblings : 16 > > core id : 5 > > cpu cores : 8 > > apicid : 11 > > initial apicid : 11 > > fpu : yes > > fpu_exception : yes > > cpuid level : 13 > > wp : yes > > flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc extd_apicid aperfmperf eagerfpu pni pclmulqdq monitor ssse3 fma cx16 sse4_1 sse4_2 movbe popcnt aes xsave avx f16c rdrand lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw skinit wdt tce topoext perfctr_core perfctr_nb bpext perfctr_l2 mwaitx hw_pstate vmmcall fsgsbase bmi1 avx2 smep bmi2 rdseed adx smap clflushopt sha_ni xsaveopt xsavec xgetbv1 xsaves clzero irperf arat npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter pfthreshold avic overflow_recov succor smca > > bugs : fxsave_leak sysret_ss_attrs null_seg > > bogomips : 7186.66 > > TLB size : 2560 4K pages > > clflush size : 64 > > cache_alignment : 64 > > address sizes : 48 bits physical, 48 bits virtual > > power management: ts ttp tm hwpstate eff_freq_ro [13] [14] > > > > processor : 12 > > vendor_id : AuthenticAMD > > cpu family : 23 > > model : 1 > > model name : AMD Ryzen 7 1800X Eight-Core Processor > > stepping : 1 > > microcode : 0x800111c > > cpu MHz : 2200.000 > > cache size : 512 KB > > physical id : 0 > > siblings : 16 > > core id : 6 > > cpu cores : 8 > > apicid : 12 > > initial apicid : 12 > > fpu : yes > > fpu_exception : yes > > cpuid level : 13 > > wp : yes > > flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc extd_apicid aperfmperf eagerfpu pni pclmulqdq monitor ssse3 fma cx16 sse4_1 sse4_2 movbe popcnt aes xsave avx f16c rdrand lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw skinit wdt tce topoext perfctr_core perfctr_nb bpext perfctr_l2 mwaitx hw_pstate vmmcall fsgsbase bmi1 avx2 smep bmi2 rdseed adx smap clflushopt sha_ni xsaveopt xsavec xgetbv1 xsaves clzero irperf arat npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter pfthreshold avic overflow_recov succor smca > > bugs : fxsave_leak sysret_ss_attrs null_seg > > bogomips : 7186.66 > > TLB size : 2560 4K pages > > clflush size : 64 > > cache_alignment : 64 > > address sizes : 48 bits physical, 48 bits virtual > > power management: ts ttp tm hwpstate eff_freq_ro [13] [14] > > > > processor : 13 > > vendor_id : AuthenticAMD > > cpu family : 23 > > model : 1 > > model name : AMD Ryzen 7 1800X Eight-Core Processor > > stepping : 1 > > microcode : 0x800111c > > cpu MHz : 2200.000 > > cache size : 512 KB > > physical id : 0 > > siblings : 16 > > core id : 6 > > cpu cores : 8 > > apicid : 13 > > initial apicid : 13 > > fpu : yes > > fpu_exception : yes > > cpuid level : 13 > > wp : yes > > flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc extd_apicid aperfmperf eagerfpu pni pclmulqdq monitor ssse3 fma cx16 sse4_1 sse4_2 movbe popcnt aes xsave avx f16c rdrand lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw skinit wdt tce topoext perfctr_core perfctr_nb bpext perfctr_l2 mwaitx hw_pstate vmmcall fsgsbase bmi1 avx2 smep bmi2 rdseed adx smap clflushopt sha_ni xsaveopt xsavec xgetbv1 xsaves clzero irperf arat npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter pfthreshold avic overflow_recov succor smca > > bugs : fxsave_leak sysret_ss_attrs null_seg > > bogomips : 7186.66 > > TLB size : 2560 4K pages > > clflush size : 64 > > cache_alignment : 64 > > address sizes : 48 bits physical, 48 bits virtual > > power management: ts ttp tm hwpstate eff_freq_ro [13] [14] > > > > processor : 14 > > vendor_id : AuthenticAMD > > cpu family : 23 > > model : 1 > > model name : AMD Ryzen 7 1800X Eight-Core Processor > > stepping : 1 > > microcode : 0x800111c > > cpu MHz : 2200.000 > > cache size : 512 KB > > physical id : 0 > > siblings : 16 > > core id : 7 > > cpu cores : 8 > > apicid : 14 > > initial apicid : 14 > > fpu : yes > > fpu_exception : yes > > cpuid level : 13 > > wp : yes > > flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc extd_apicid aperfmperf eagerfpu pni pclmulqdq monitor ssse3 fma cx16 sse4_1 sse4_2 movbe popcnt aes xsave avx f16c rdrand lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw skinit wdt tce topoext perfctr_core perfctr_nb bpext perfctr_l2 mwaitx hw_pstate vmmcall fsgsbase bmi1 avx2 smep bmi2 rdseed adx smap clflushopt sha_ni xsaveopt xsavec xgetbv1 xsaves clzero irperf arat npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter pfthreshold avic overflow_recov succor smca > > bugs : fxsave_leak sysret_ss_attrs null_seg > > bogomips : 7186.66 > > TLB size : 2560 4K pages > > clflush size : 64 > > cache_alignment : 64 > > address sizes : 48 bits physical, 48 bits virtual > > power management: ts ttp tm hwpstate eff_freq_ro [13] [14] > > > > processor : 15 > > vendor_id : AuthenticAMD > > cpu family : 23 > > model : 1 > > model name : AMD Ryzen 7 1800X Eight-Core Processor > > stepping : 1 > > microcode : 0x800111c > > cpu MHz : 2200.000 > > cache size : 512 KB > > physical id : 0 > > siblings : 16 > > core id : 7 > > cpu cores : 8 > > apicid : 15 > > initial apicid : 15 > > fpu : yes > > fpu_exception : yes > > cpuid level : 13 > > wp : yes > > flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc extd_apicid aperfmperf eagerfpu pni pclmulqdq monitor ssse3 fma cx16 sse4_1 sse4_2 movbe popcnt aes xsave avx f16c rdrand lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw skinit wdt tce topoext perfctr_core perfctr_nb bpext perfctr_l2 mwaitx hw_pstate vmmcall fsgsbase bmi1 avx2 smep bmi2 rdseed adx smap clflushopt sha_ni xsaveopt xsavec xgetbv1 xsaves clzero irperf arat npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter pfthreshold avic overflow_recov succor smca > > bugs : fxsave_leak sysret_ss_attrs null_seg > > bogomips : 7186.66 > > TLB size : 2560 4K pages > > clflush size : 64 > > cache_alignment : 64 > > address sizes : 48 bits physical, 48 bits virtual > > power management: ts ttp tm hwpstate eff_freq_ro [13] [14] > > > > ``` > > > > Regards, > > Satoru > > > > > >> > >> Thanks, > >> > >> Paolo ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [BUG] x86: failed to boot a kernel on a Ryzen machine 2017-04-27 0:42 ` Satoru Takeuchi @ 2017-04-28 13:34 ` Paolo Bonzini 2017-04-29 21:08 ` Satoru Takeuchi 0 siblings, 1 reply; 18+ messages in thread From: Paolo Bonzini @ 2017-04-28 13:34 UTC (permalink / raw) To: Satoru Takeuchi Cc: Borislav Petkov, x86, linux-kernel, kvm ML, Jiri Denemark, Dr. David Alan Gilbert On 27/04/2017 02:42, Satoru Takeuchi wrote: > At Wed, 26 Apr 2017 18:58:27 +0200, >> On 26/04/2017 13:47, Satoru Takeuchi wrote: >>> OK, here it is. >> >> It looks like the cause is that AMD has removed TBM instructions >> compared to e.g. Piledriver, so libvirt resorts to a much older base >> model (thanks to Dave Gilbert for sorting through the list of feature bits). ... and the libvirt people also told me that: - a more recent QEMU would have enabled CPU leaf 0xD, making it possible to use AVX inside the guest. - a more recent libvirt would have used Opteron_G5 as a base instead of Opteron_G3. Thanks, Paolo >> Can you please run this script: >> >> http://libvirt.org/git/?p=libvirt.git;a=blob_plain;f=tests/cputestdata/cpu-gather.sh;h=83963557ec4075d351be09e17994ac5300bc5d1f;hb=HEAD >> >> and send the output? > > > OK. Here is the result. > > ``` > # bash tests-cputestdata-cpu-gather.sh > model name : AMD Ryzen 7 1800X Eight-Core Processor > CPU: > 0x00000000 0x00: eax=0x0000000d ebx=0x68747541 ecx=0x444d4163 edx=0x69746e65 > 0x00000001 0x00: eax=0x00800f11 ebx=0x09100800 ecx=0x7ed8320b edx=0x178bfbff > 0x00000002 0x00: eax=0x00000000 ebx=0x00000000 ecx=0x00000000 edx=0x00000000 > 0x00000003 0x00: eax=0x00000000 ebx=0x00000000 ecx=0x00000000 edx=0x00000000 > 0x00000005 0x00: eax=0x00000040 ebx=0x00000040 ecx=0x00000003 edx=0x00000000 > 0x00000006 0x00: eax=0x00000004 ebx=0x00000000 ecx=0x00000001 edx=0x00000000 > 0x00000007 0x00: eax=0x00000000 ebx=0x209c01a9 ecx=0x00000000 edx=0x00000000 > 0x00000008 0x00: eax=0x00000000 ebx=0x00000000 ecx=0x00000000 edx=0x00000000 > 0x00000009 0x00: eax=0x00000000 ebx=0x00000000 ecx=0x00000000 edx=0x00000000 > 0x0000000a 0x00: eax=0x00000000 ebx=0x00000000 ecx=0x00000000 edx=0x00000000 > 0x0000000c 0x00: eax=0x00000000 ebx=0x00000000 ecx=0x00000000 edx=0x00000000 > 0x0000000d 0x00: eax=0x00000007 ebx=0x00000340 ecx=0x00000340 edx=0x00000000 > 0x0000000d 0x01: eax=0x0000000f ebx=0x00000340 ecx=0x00000000 edx=0x00000000 > 0x0000000d 0x02: eax=0x00000100 ebx=0x00000240 ecx=0x00000000 edx=0x00000000 > 0x0000000d 0x03: eax=0x00000000 ebx=0x00000000 ecx=0x00000000 edx=0x00000000 > 0x80000000 0x00: eax=0x8000001f ebx=0x68747541 ecx=0x444d4163 edx=0x69746e65 > 0x80000001 0x00: eax=0x00800f11 ebx=0x20000000 ecx=0x35c233ff edx=0x2fd3fbff > 0x80000002 0x00: eax=0x20444d41 ebx=0x657a7952 ecx=0x2037206e edx=0x30303831 > 0x80000003 0x00: eax=0x69452058 ebx=0x2d746867 ecx=0x65726f43 edx=0x6f725020 > 0x80000004 0x00: eax=0x73736563 ebx=0x2020726f ecx=0x20202020 edx=0x00202020 > 0x80000005 0x00: eax=0xff40ff40 ebx=0xff40ff40 ecx=0x20080140 edx=0x40040140 > 0x80000006 0x00: eax=0x26006400 ebx=0x66006400 ecx=0x02006140 edx=0x00808140 > 0x80000007 0x00: eax=0x00000000 ebx=0x0000001b ecx=0x00000000 edx=0x00006599 > 0x80000008 0x00: eax=0x00003030 ebx=0x00000007 ecx=0x0000400f edx=0x00000000 > 0x80000009 0x00: eax=0x00000000 ebx=0x00000000 ecx=0x00000000 edx=0x00000000 > 0x8000000a 0x00: eax=0x00000001 ebx=0x00008000 ecx=0x00000000 edx=0x0001bcff > 0x8000000b 0x00: eax=0x00000000 ebx=0x00000000 ecx=0x00000000 edx=0x00000000 > 0x8000000c 0x00: eax=0x00000000 ebx=0x00000000 ecx=0x00000000 edx=0x00000000 > 0x8000000d 0x00: eax=0x00000000 ebx=0x00000000 ecx=0x00000000 edx=0x00000000 > 0x8000000e 0x00: eax=0x00000000 ebx=0x00000000 ecx=0x00000000 edx=0x00000000 > 0x8000000f 0x00: eax=0x00000000 ebx=0x00000000 ecx=0x00000000 edx=0x00000000 > 0x80000010 0x00: eax=0x00000000 ebx=0x00000000 ecx=0x00000000 edx=0x00000000 > 0x80000011 0x00: eax=0x00000000 ebx=0x00000000 ecx=0x00000000 edx=0x00000000 > 0x80000012 0x00: eax=0x00000000 ebx=0x00000000 ecx=0x00000000 edx=0x00000000 > 0x80000013 0x00: eax=0x00000000 ebx=0x00000000 ecx=0x00000000 edx=0x00000000 > 0x80000014 0x00: eax=0x00000000 ebx=0x00000000 ecx=0x00000000 edx=0x00000000 > 0x80000015 0x00: eax=0x00000000 ebx=0x00000000 ecx=0x00000000 edx=0x00000000 > 0x80000016 0x00: eax=0x00000000 ebx=0x00000000 ecx=0x00000000 edx=0x00000000 > 0x80000017 0x00: eax=0x00000000 ebx=0x00000000 ecx=0x00000000 edx=0x00000000 > 0x80000018 0x00: eax=0x00000000 ebx=0x00000000 ecx=0x00000000 edx=0x00000000 > 0x80000019 0x00: eax=0xf040f040 ebx=0x00000000 ecx=0x00000000 edx=0x00000000 > 0x8000001a 0x00: eax=0x00000003 ebx=0x00000000 ecx=0x00000000 edx=0x00000000 > 0x8000001b 0x00: eax=0x000003ff ebx=0x00000000 ecx=0x00000000 edx=0x00000000 > 0x8000001c 0x00: eax=0x00000000 ebx=0x00000000 ecx=0x00000000 edx=0x00000000 > 0x8000001d 0x00: eax=0x00004121 ebx=0x01c0003f ecx=0x0000003f edx=0x00000000 > 0x8000001e 0x00: eax=0x00000009 ebx=0x00000104 ecx=0x00000000 edx=0x00000000 > 0x8000001f 0x00: eax=0x00000007 ebx=0x0000016f ecx=0x0000000f edx=0x00000000 > 0x80860000 0x00: eax=0x00000000 ebx=0x00000000 ecx=0x00000000 edx=0x00000000 > 0xc0000000 0x00: eax=0x00000000 ebx=0x00000000 ecx=0x00000000 edx=0x00000000 > > warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 0] > warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 1] > warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 2] > warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 3] > warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 4] > warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 5] > warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 6] > warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 7] > warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 8] > warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 9] > warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 12] > warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 13] > warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 14] > warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 15] > warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 16] > warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 17] > warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 23] > warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 24] > {"QMP": {"version": {"qemu": {"micro": 0, "minor": 5, "major": 2}, "package": " (Debian 1:2.5+dfsg-5ubuntu10.11)"}, "capabilities": []}} > warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 0] > warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 1] > warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 2] > warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 3] > warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 4] > warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 5] > warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 6] > warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 7] > warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 8] > warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 9] > warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 12] > warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 13] > warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 14] > warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 15] > warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 16] > warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 17] > warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 23] > warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 24] > {"return": {}} > {"return": [{"cpuid-register": "EAX", "cpuid-input-eax": 6, "features": 4}, {"cpuid-register": "EAX", "cpuid-input-ecx": 1, "cpuid-input-eax": 13, "features": 7}, {"cpuid-register": "EDX", "cpuid-input-eax": 2147483658, "features": 9}, {"cpuid-register": "EAX", "cpuid-input-eax": 1073741825, "features": 16777467}, {"cpuid-register": "EDX", "cpuid-input-eax": 3221225473, "features": 0}, {"cpuid-register": "EDX", "cpuid-input-eax": 2147483655, "features": 0}, {"cpuid-register": "ECX", "cpuid-input-eax": 2147483649, "features": 1015}, {"cpuid-register": "EDX", "cpuid-input-eax": 2147483649, "features": 776996864}, {"cpuid-register": "EBX", "cpuid-input-ecx": 0, "cpuid-input-eax": 7, "features": 10224043}, {"cpuid-register": "ECX", "cpuid-input-eax": 1, "features": 4160238083}, {"cpuid-register": "EDX", "cpuid-input-eax": 1, "features": 126614527}], "id": "feature-words"} > {"return": 23, "id": "family"} > {"return": 1, "id": "model"} > {"return": 1, "id": "stepping"} > {"return": "AMD Ryzen 7 1800X Eight-Core Processor ", "id": "model-id"} > {"return": {}} > {"timestamp": {"seconds": 1493253066, "microseconds": 721689}, "event": "SHUTDOWN"} > # > ``` > > Thanks, > Satoru > >> >> Thanks, >> >> Paolo >> >>> ``` >>> $ cat /proc/cpuinfo >>> processor : 0 >>> vendor_id : AuthenticAMD >>> cpu family : 23 >>> model : 1 >>> model name : AMD Ryzen 7 1800X Eight-Core Processor >>> stepping : 1 >>> microcode : 0x800111c >>> cpu MHz : 2200.000 >>> cache size : 512 KB >>> physical id : 0 >>> siblings : 16 >>> core id : 0 >>> cpu cores : 8 >>> apicid : 0 >>> initial apicid : 0 >>> fpu : yes >>> fpu_exception : yes >>> cpuid level : 13 >>> wp : yes >>> flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc extd_apicid aperfmperf eagerfpu pni pclmulqdq monitor ssse3 fma cx16 sse4_1 sse4_2 movbe popcnt aes xsave avx f16c rdrand lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw skinit wdt tce topoext perfctr_core perfctr_nb bpext perfctr_l2 mwaitx hw_pstate vmmcall fsgsbase bmi1 avx2 smep bmi2 rdseed adx smap clflushopt sha_ni xsaveopt xsavec xgetbv1 xsaves clzero irperf arat npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter pfthreshold avic overflow_recov succor smca >>> bugs : fxsave_leak sysret_ss_attrs null_seg >>> bogomips : 7186.66 >>> TLB size : 2560 4K pages >>> clflush size : 64 >>> cache_alignment : 64 >>> address sizes : 48 bits physical, 48 bits virtual >>> power management: ts ttp tm hwpstate eff_freq_ro [13] [14] >>> >>> processor : 1 >>> vendor_id : AuthenticAMD >>> cpu family : 23 >>> model : 1 >>> model name : AMD Ryzen 7 1800X Eight-Core Processor >>> stepping : 1 >>> microcode : 0x800111c >>> cpu MHz : 2200.000 >>> cache size : 512 KB >>> physical id : 0 >>> siblings : 16 >>> core id : 0 >>> cpu cores : 8 >>> apicid : 1 >>> initial apicid : 1 >>> fpu : yes >>> fpu_exception : yes >>> cpuid level : 13 >>> wp : yes >>> flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc extd_apicid aperfmperf eagerfpu pni pclmulqdq monitor ssse3 fma cx16 sse4_1 sse4_2 movbe popcnt aes xsave avx f16c rdrand lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw skinit wdt tce topoext perfctr_core perfctr_nb bpext perfctr_l2 mwaitx hw_pstate vmmcall fsgsbase bmi1 avx2 smep bmi2 rdseed adx smap clflushopt sha_ni xsaveopt xsavec xgetbv1 xsaves clzero irperf arat npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter pfthreshold avic overflow_recov succor smca >>> bugs : fxsave_leak sysret_ss_attrs null_seg >>> bogomips : 7186.66 >>> TLB size : 2560 4K pages >>> clflush size : 64 >>> cache_alignment : 64 >>> address sizes : 48 bits physical, 48 bits virtual >>> power management: ts ttp tm hwpstate eff_freq_ro [13] [14] >>> >>> processor : 2 >>> vendor_id : AuthenticAMD >>> cpu family : 23 >>> model : 1 >>> model name : AMD Ryzen 7 1800X Eight-Core Processor >>> stepping : 1 >>> microcode : 0x800111c >>> cpu MHz : 2200.000 >>> cache size : 512 KB >>> physical id : 0 >>> siblings : 16 >>> core id : 1 >>> cpu cores : 8 >>> apicid : 2 >>> initial apicid : 2 >>> fpu : yes >>> fpu_exception : yes >>> cpuid level : 13 >>> wp : yes >>> flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc extd_apicid aperfmperf eagerfpu pni pclmulqdq monitor ssse3 fma cx16 sse4_1 sse4_2 movbe popcnt aes xsave avx f16c rdrand lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw skinit wdt tce topoext perfctr_core perfctr_nb bpext perfctr_l2 mwaitx hw_pstate vmmcall fsgsbase bmi1 avx2 smep bmi2 rdseed adx smap clflushopt sha_ni xsaveopt xsavec xgetbv1 xsaves clzero irperf arat npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter pfthreshold avic overflow_recov succor smca >>> bugs : fxsave_leak sysret_ss_attrs null_seg >>> bogomips : 7186.66 >>> TLB size : 2560 4K pages >>> clflush size : 64 >>> cache_alignment : 64 >>> address sizes : 48 bits physical, 48 bits virtual >>> power management: ts ttp tm hwpstate eff_freq_ro [13] [14] >>> >>> processor : 3 >>> vendor_id : AuthenticAMD >>> cpu family : 23 >>> model : 1 >>> model name : AMD Ryzen 7 1800X Eight-Core Processor >>> stepping : 1 >>> microcode : 0x800111c >>> cpu MHz : 2200.000 >>> cache size : 512 KB >>> physical id : 0 >>> siblings : 16 >>> core id : 1 >>> cpu cores : 8 >>> apicid : 3 >>> initial apicid : 3 >>> fpu : yes >>> fpu_exception : yes >>> cpuid level : 13 >>> wp : yes >>> flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc extd_apicid aperfmperf eagerfpu pni pclmulqdq monitor ssse3 fma cx16 sse4_1 sse4_2 movbe popcnt aes xsave avx f16c rdrand lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw skinit wdt tce topoext perfctr_core perfctr_nb bpext perfctr_l2 mwaitx hw_pstate vmmcall fsgsbase bmi1 avx2 smep bmi2 rdseed adx smap clflushopt sha_ni xsaveopt xsavec xgetbv1 xsaves clzero irperf arat npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter pfthreshold avic overflow_recov succor smca >>> bugs : fxsave_leak sysret_ss_attrs null_seg >>> bogomips : 7186.66 >>> TLB size : 2560 4K pages >>> clflush size : 64 >>> cache_alignment : 64 >>> address sizes : 48 bits physical, 48 bits virtual >>> power management: ts ttp tm hwpstate eff_freq_ro [13] [14] >>> >>> processor : 4 >>> vendor_id : AuthenticAMD >>> cpu family : 23 >>> model : 1 >>> model name : AMD Ryzen 7 1800X Eight-Core Processor >>> stepping : 1 >>> microcode : 0x800111c >>> cpu MHz : 2200.000 >>> cache size : 512 KB >>> physical id : 0 >>> siblings : 16 >>> core id : 2 >>> cpu cores : 8 >>> apicid : 4 >>> initial apicid : 4 >>> fpu : yes >>> fpu_exception : yes >>> cpuid level : 13 >>> wp : yes >>> flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc extd_apicid aperfmperf eagerfpu pni pclmulqdq monitor ssse3 fma cx16 sse4_1 sse4_2 movbe popcnt aes xsave avx f16c rdrand lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw skinit wdt tce topoext perfctr_core perfctr_nb bpext perfctr_l2 mwaitx hw_pstate vmmcall fsgsbase bmi1 avx2 smep bmi2 rdseed adx smap clflushopt sha_ni xsaveopt xsavec xgetbv1 xsaves clzero irperf arat npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter pfthreshold avic overflow_recov succor smca >>> bugs : fxsave_leak sysret_ss_attrs null_seg >>> bogomips : 7186.66 >>> TLB size : 2560 4K pages >>> clflush size : 64 >>> cache_alignment : 64 >>> address sizes : 48 bits physical, 48 bits virtual >>> power management: ts ttp tm hwpstate eff_freq_ro [13] [14] >>> >>> processor : 5 >>> vendor_id : AuthenticAMD >>> cpu family : 23 >>> model : 1 >>> model name : AMD Ryzen 7 1800X Eight-Core Processor >>> stepping : 1 >>> microcode : 0x800111c >>> cpu MHz : 2200.000 >>> cache size : 512 KB >>> physical id : 0 >>> siblings : 16 >>> core id : 2 >>> cpu cores : 8 >>> apicid : 5 >>> initial apicid : 5 >>> fpu : yes >>> fpu_exception : yes >>> cpuid level : 13 >>> wp : yes >>> flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc extd_apicid aperfmperf eagerfpu pni pclmulqdq monitor ssse3 fma cx16 sse4_1 sse4_2 movbe popcnt aes xsave avx f16c rdrand lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw skinit wdt tce topoext perfctr_core perfctr_nb bpext perfctr_l2 mwaitx hw_pstate vmmcall fsgsbase bmi1 avx2 smep bmi2 rdseed adx smap clflushopt sha_ni xsaveopt xsavec xgetbv1 xsaves clzero irperf arat npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter pfthreshold avic overflow_recov succor smca >>> bugs : fxsave_leak sysret_ss_attrs null_seg >>> bogomips : 7186.66 >>> TLB size : 2560 4K pages >>> clflush size : 64 >>> cache_alignment : 64 >>> address sizes : 48 bits physical, 48 bits virtual >>> power management: ts ttp tm hwpstate eff_freq_ro [13] [14] >>> >>> processor : 6 >>> vendor_id : AuthenticAMD >>> cpu family : 23 >>> model : 1 >>> model name : AMD Ryzen 7 1800X Eight-Core Processor >>> stepping : 1 >>> microcode : 0x800111c >>> cpu MHz : 2200.000 >>> cache size : 512 KB >>> physical id : 0 >>> siblings : 16 >>> core id : 3 >>> cpu cores : 8 >>> apicid : 6 >>> initial apicid : 6 >>> fpu : yes >>> fpu_exception : yes >>> cpuid level : 13 >>> wp : yes >>> flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc extd_apicid aperfmperf eagerfpu pni pclmulqdq monitor ssse3 fma cx16 sse4_1 sse4_2 movbe popcnt aes xsave avx f16c rdrand lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw skinit wdt tce topoext perfctr_core perfctr_nb bpext perfctr_l2 mwaitx hw_pstate vmmcall fsgsbase bmi1 avx2 smep bmi2 rdseed adx smap clflushopt sha_ni xsaveopt xsavec xgetbv1 xsaves clzero irperf arat npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter pfthreshold avic overflow_recov succor smca >>> bugs : fxsave_leak sysret_ss_attrs null_seg >>> bogomips : 7186.66 >>> TLB size : 2560 4K pages >>> clflush size : 64 >>> cache_alignment : 64 >>> address sizes : 48 bits physical, 48 bits virtual >>> power management: ts ttp tm hwpstate eff_freq_ro [13] [14] >>> >>> processor : 7 >>> vendor_id : AuthenticAMD >>> cpu family : 23 >>> model : 1 >>> model name : AMD Ryzen 7 1800X Eight-Core Processor >>> stepping : 1 >>> microcode : 0x800111c >>> cpu MHz : 2200.000 >>> cache size : 512 KB >>> physical id : 0 >>> siblings : 16 >>> core id : 3 >>> cpu cores : 8 >>> apicid : 7 >>> initial apicid : 7 >>> fpu : yes >>> fpu_exception : yes >>> cpuid level : 13 >>> wp : yes >>> flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc extd_apicid aperfmperf eagerfpu pni pclmulqdq monitor ssse3 fma cx16 sse4_1 sse4_2 movbe popcnt aes xsave avx f16c rdrand lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw skinit wdt tce topoext perfctr_core perfctr_nb bpext perfctr_l2 mwaitx hw_pstate vmmcall fsgsbase bmi1 avx2 smep bmi2 rdseed adx smap clflushopt sha_ni xsaveopt xsavec xgetbv1 xsaves clzero irperf arat npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter pfthreshold avic overflow_recov succor smca >>> bugs : fxsave_leak sysret_ss_attrs null_seg >>> bogomips : 7186.66 >>> TLB size : 2560 4K pages >>> clflush size : 64 >>> cache_alignment : 64 >>> address sizes : 48 bits physical, 48 bits virtual >>> power management: ts ttp tm hwpstate eff_freq_ro [13] [14] >>> >>> processor : 8 >>> vendor_id : AuthenticAMD >>> cpu family : 23 >>> model : 1 >>> model name : AMD Ryzen 7 1800X Eight-Core Processor >>> stepping : 1 >>> microcode : 0x800111c >>> cpu MHz : 2200.000 >>> cache size : 512 KB >>> physical id : 0 >>> siblings : 16 >>> core id : 4 >>> cpu cores : 8 >>> apicid : 8 >>> initial apicid : 8 >>> fpu : yes >>> fpu_exception : yes >>> cpuid level : 13 >>> wp : yes >>> flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc extd_apicid aperfmperf eagerfpu pni pclmulqdq monitor ssse3 fma cx16 sse4_1 sse4_2 movbe popcnt aes xsave avx f16c rdrand lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw skinit wdt tce topoext perfctr_core perfctr_nb bpext perfctr_l2 mwaitx hw_pstate vmmcall fsgsbase bmi1 avx2 smep bmi2 rdseed adx smap clflushopt sha_ni xsaveopt xsavec xgetbv1 xsaves clzero irperf arat npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter pfthreshold avic overflow_recov succor smca >>> bugs : fxsave_leak sysret_ss_attrs null_seg >>> bogomips : 7186.66 >>> TLB size : 2560 4K pages >>> clflush size : 64 >>> cache_alignment : 64 >>> address sizes : 48 bits physical, 48 bits virtual >>> power management: ts ttp tm hwpstate eff_freq_ro [13] [14] >>> >>> processor : 9 >>> vendor_id : AuthenticAMD >>> cpu family : 23 >>> model : 1 >>> model name : AMD Ryzen 7 1800X Eight-Core Processor >>> stepping : 1 >>> microcode : 0x800111c >>> cpu MHz : 2200.000 >>> cache size : 512 KB >>> physical id : 0 >>> siblings : 16 >>> core id : 4 >>> cpu cores : 8 >>> apicid : 9 >>> initial apicid : 9 >>> fpu : yes >>> fpu_exception : yes >>> cpuid level : 13 >>> wp : yes >>> flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc extd_apicid aperfmperf eagerfpu pni pclmulqdq monitor ssse3 fma cx16 sse4_1 sse4_2 movbe popcnt aes xsave avx f16c rdrand lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw skinit wdt tce topoext perfctr_core perfctr_nb bpext perfctr_l2 mwaitx hw_pstate vmmcall fsgsbase bmi1 avx2 smep bmi2 rdseed adx smap clflushopt sha_ni xsaveopt xsavec xgetbv1 xsaves clzero irperf arat npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter pfthreshold avic overflow_recov succor smca >>> bugs : fxsave_leak sysret_ss_attrs null_seg >>> bogomips : 7186.66 >>> TLB size : 2560 4K pages >>> clflush size : 64 >>> cache_alignment : 64 >>> address sizes : 48 bits physical, 48 bits virtual >>> power management: ts ttp tm hwpstate eff_freq_ro [13] [14] >>> >>> processor : 10 >>> vendor_id : AuthenticAMD >>> cpu family : 23 >>> model : 1 >>> model name : AMD Ryzen 7 1800X Eight-Core Processor >>> stepping : 1 >>> microcode : 0x800111c >>> cpu MHz : 2200.000 >>> cache size : 512 KB >>> physical id : 0 >>> siblings : 16 >>> core id : 5 >>> cpu cores : 8 >>> apicid : 10 >>> initial apicid : 10 >>> fpu : yes >>> fpu_exception : yes >>> cpuid level : 13 >>> wp : yes >>> flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc extd_apicid aperfmperf eagerfpu pni pclmulqdq monitor ssse3 fma cx16 sse4_1 sse4_2 movbe popcnt aes xsave avx f16c rdrand lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw skinit wdt tce topoext perfctr_core perfctr_nb bpext perfctr_l2 mwaitx hw_pstate vmmcall fsgsbase bmi1 avx2 smep bmi2 rdseed adx smap clflushopt sha_ni xsaveopt xsavec xgetbv1 xsaves clzero irperf arat npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter pfthreshold avic overflow_recov succor smca >>> bugs : fxsave_leak sysret_ss_attrs null_seg >>> bogomips : 7186.66 >>> TLB size : 2560 4K pages >>> clflush size : 64 >>> cache_alignment : 64 >>> address sizes : 48 bits physical, 48 bits virtual >>> power management: ts ttp tm hwpstate eff_freq_ro [13] [14] >>> >>> processor : 11 >>> vendor_id : AuthenticAMD >>> cpu family : 23 >>> model : 1 >>> model name : AMD Ryzen 7 1800X Eight-Core Processor >>> stepping : 1 >>> microcode : 0x800111c >>> cpu MHz : 2200.000 >>> cache size : 512 KB >>> physical id : 0 >>> siblings : 16 >>> core id : 5 >>> cpu cores : 8 >>> apicid : 11 >>> initial apicid : 11 >>> fpu : yes >>> fpu_exception : yes >>> cpuid level : 13 >>> wp : yes >>> flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc extd_apicid aperfmperf eagerfpu pni pclmulqdq monitor ssse3 fma cx16 sse4_1 sse4_2 movbe popcnt aes xsave avx f16c rdrand lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw skinit wdt tce topoext perfctr_core perfctr_nb bpext perfctr_l2 mwaitx hw_pstate vmmcall fsgsbase bmi1 avx2 smep bmi2 rdseed adx smap clflushopt sha_ni xsaveopt xsavec xgetbv1 xsaves clzero irperf arat npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter pfthreshold avic overflow_recov succor smca >>> bugs : fxsave_leak sysret_ss_attrs null_seg >>> bogomips : 7186.66 >>> TLB size : 2560 4K pages >>> clflush size : 64 >>> cache_alignment : 64 >>> address sizes : 48 bits physical, 48 bits virtual >>> power management: ts ttp tm hwpstate eff_freq_ro [13] [14] >>> >>> processor : 12 >>> vendor_id : AuthenticAMD >>> cpu family : 23 >>> model : 1 >>> model name : AMD Ryzen 7 1800X Eight-Core Processor >>> stepping : 1 >>> microcode : 0x800111c >>> cpu MHz : 2200.000 >>> cache size : 512 KB >>> physical id : 0 >>> siblings : 16 >>> core id : 6 >>> cpu cores : 8 >>> apicid : 12 >>> initial apicid : 12 >>> fpu : yes >>> fpu_exception : yes >>> cpuid level : 13 >>> wp : yes >>> flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc extd_apicid aperfmperf eagerfpu pni pclmulqdq monitor ssse3 fma cx16 sse4_1 sse4_2 movbe popcnt aes xsave avx f16c rdrand lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw skinit wdt tce topoext perfctr_core perfctr_nb bpext perfctr_l2 mwaitx hw_pstate vmmcall fsgsbase bmi1 avx2 smep bmi2 rdseed adx smap clflushopt sha_ni xsaveopt xsavec xgetbv1 xsaves clzero irperf arat npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter pfthreshold avic overflow_recov succor smca >>> bugs : fxsave_leak sysret_ss_attrs null_seg >>> bogomips : 7186.66 >>> TLB size : 2560 4K pages >>> clflush size : 64 >>> cache_alignment : 64 >>> address sizes : 48 bits physical, 48 bits virtual >>> power management: ts ttp tm hwpstate eff_freq_ro [13] [14] >>> >>> processor : 13 >>> vendor_id : AuthenticAMD >>> cpu family : 23 >>> model : 1 >>> model name : AMD Ryzen 7 1800X Eight-Core Processor >>> stepping : 1 >>> microcode : 0x800111c >>> cpu MHz : 2200.000 >>> cache size : 512 KB >>> physical id : 0 >>> siblings : 16 >>> core id : 6 >>> cpu cores : 8 >>> apicid : 13 >>> initial apicid : 13 >>> fpu : yes >>> fpu_exception : yes >>> cpuid level : 13 >>> wp : yes >>> flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc extd_apicid aperfmperf eagerfpu pni pclmulqdq monitor ssse3 fma cx16 sse4_1 sse4_2 movbe popcnt aes xsave avx f16c rdrand lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw skinit wdt tce topoext perfctr_core perfctr_nb bpext perfctr_l2 mwaitx hw_pstate vmmcall fsgsbase bmi1 avx2 smep bmi2 rdseed adx smap clflushopt sha_ni xsaveopt xsavec xgetbv1 xsaves clzero irperf arat npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter pfthreshold avic overflow_recov succor smca >>> bugs : fxsave_leak sysret_ss_attrs null_seg >>> bogomips : 7186.66 >>> TLB size : 2560 4K pages >>> clflush size : 64 >>> cache_alignment : 64 >>> address sizes : 48 bits physical, 48 bits virtual >>> power management: ts ttp tm hwpstate eff_freq_ro [13] [14] >>> >>> processor : 14 >>> vendor_id : AuthenticAMD >>> cpu family : 23 >>> model : 1 >>> model name : AMD Ryzen 7 1800X Eight-Core Processor >>> stepping : 1 >>> microcode : 0x800111c >>> cpu MHz : 2200.000 >>> cache size : 512 KB >>> physical id : 0 >>> siblings : 16 >>> core id : 7 >>> cpu cores : 8 >>> apicid : 14 >>> initial apicid : 14 >>> fpu : yes >>> fpu_exception : yes >>> cpuid level : 13 >>> wp : yes >>> flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc extd_apicid aperfmperf eagerfpu pni pclmulqdq monitor ssse3 fma cx16 sse4_1 sse4_2 movbe popcnt aes xsave avx f16c rdrand lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw skinit wdt tce topoext perfctr_core perfctr_nb bpext perfctr_l2 mwaitx hw_pstate vmmcall fsgsbase bmi1 avx2 smep bmi2 rdseed adx smap clflushopt sha_ni xsaveopt xsavec xgetbv1 xsaves clzero irperf arat npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter pfthreshold avic overflow_recov succor smca >>> bugs : fxsave_leak sysret_ss_attrs null_seg >>> bogomips : 7186.66 >>> TLB size : 2560 4K pages >>> clflush size : 64 >>> cache_alignment : 64 >>> address sizes : 48 bits physical, 48 bits virtual >>> power management: ts ttp tm hwpstate eff_freq_ro [13] [14] >>> >>> processor : 15 >>> vendor_id : AuthenticAMD >>> cpu family : 23 >>> model : 1 >>> model name : AMD Ryzen 7 1800X Eight-Core Processor >>> stepping : 1 >>> microcode : 0x800111c >>> cpu MHz : 2200.000 >>> cache size : 512 KB >>> physical id : 0 >>> siblings : 16 >>> core id : 7 >>> cpu cores : 8 >>> apicid : 15 >>> initial apicid : 15 >>> fpu : yes >>> fpu_exception : yes >>> cpuid level : 13 >>> wp : yes >>> flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc extd_apicid aperfmperf eagerfpu pni pclmulqdq monitor ssse3 fma cx16 sse4_1 sse4_2 movbe popcnt aes xsave avx f16c rdrand lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw skinit wdt tce topoext perfctr_core perfctr_nb bpext perfctr_l2 mwaitx hw_pstate vmmcall fsgsbase bmi1 avx2 smep bmi2 rdseed adx smap clflushopt sha_ni xsaveopt xsavec xgetbv1 xsaves clzero irperf arat npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter pfthreshold avic overflow_recov succor smca >>> bugs : fxsave_leak sysret_ss_attrs null_seg >>> bogomips : 7186.66 >>> TLB size : 2560 4K pages >>> clflush size : 64 >>> cache_alignment : 64 >>> address sizes : 48 bits physical, 48 bits virtual >>> power management: ts ttp tm hwpstate eff_freq_ro [13] [14] >>> >>> ``` >>> >>> Regards, >>> Satoru >>> >>> >>>> >>>> Thanks, >>>> >>>> Paolo ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [BUG] x86: failed to boot a kernel on a Ryzen machine 2017-04-28 13:34 ` Paolo Bonzini @ 2017-04-29 21:08 ` Satoru Takeuchi 0 siblings, 0 replies; 18+ messages in thread From: Satoru Takeuchi @ 2017-04-29 21:08 UTC (permalink / raw) To: Paolo Bonzini Cc: Satoru Takeuchi, Borislav Petkov, x86, linux-kernel, kvm ML, Jiri Denemark, Dr. David Alan Gilbert At Fri, 28 Apr 2017 15:34:06 +0200, Paolo Bonzini wrote: > > > > On 27/04/2017 02:42, Satoru Takeuchi wrote: > > At Wed, 26 Apr 2017 18:58:27 +0200, > >> On 26/04/2017 13:47, Satoru Takeuchi wrote: > >>> OK, here it is. > >> > >> It looks like the cause is that AMD has removed TBM instructions > >> compared to e.g. Piledriver, so libvirt resorts to a much older base > >> model (thanks to Dave Gilbert for sorting through the list of feature bits). > > ... and the libvirt people also told me that: > > - a more recent QEMU would have enabled CPU leaf 0xD, making it possible > to use AVX inside the guest. > > - a more recent libvirt would have used Opteron_G5 as a base instead of > Opteron_G3. Oh, thank you for letting me know! Satoru > > Thanks, > > Paolo > > >> Can you please run this script: > >> > >> http://libvirt.org/git/?p=libvirt.git;a=blob_plain;f=tests/cputestdata/cpu-gather.sh;h=83963557ec4075d351be09e17994ac5300bc5d1f;hb=HEAD > >> > >> and send the output? > > > > > > OK. Here is the result. > > > > ``` > > # bash tests-cputestdata-cpu-gather.sh > > model name : AMD Ryzen 7 1800X Eight-Core Processor > > CPU: > > 0x00000000 0x00: eax=0x0000000d ebx=0x68747541 ecx=0x444d4163 edx=0x69746e65 > > 0x00000001 0x00: eax=0x00800f11 ebx=0x09100800 ecx=0x7ed8320b edx=0x178bfbff > > 0x00000002 0x00: eax=0x00000000 ebx=0x00000000 ecx=0x00000000 edx=0x00000000 > > 0x00000003 0x00: eax=0x00000000 ebx=0x00000000 ecx=0x00000000 edx=0x00000000 > > 0x00000005 0x00: eax=0x00000040 ebx=0x00000040 ecx=0x00000003 edx=0x00000000 > > 0x00000006 0x00: eax=0x00000004 ebx=0x00000000 ecx=0x00000001 edx=0x00000000 > > 0x00000007 0x00: eax=0x00000000 ebx=0x209c01a9 ecx=0x00000000 edx=0x00000000 > > 0x00000008 0x00: eax=0x00000000 ebx=0x00000000 ecx=0x00000000 edx=0x00000000 > > 0x00000009 0x00: eax=0x00000000 ebx=0x00000000 ecx=0x00000000 edx=0x00000000 > > 0x0000000a 0x00: eax=0x00000000 ebx=0x00000000 ecx=0x00000000 edx=0x00000000 > > 0x0000000c 0x00: eax=0x00000000 ebx=0x00000000 ecx=0x00000000 edx=0x00000000 > > 0x0000000d 0x00: eax=0x00000007 ebx=0x00000340 ecx=0x00000340 edx=0x00000000 > > 0x0000000d 0x01: eax=0x0000000f ebx=0x00000340 ecx=0x00000000 edx=0x00000000 > > 0x0000000d 0x02: eax=0x00000100 ebx=0x00000240 ecx=0x00000000 edx=0x00000000 > > 0x0000000d 0x03: eax=0x00000000 ebx=0x00000000 ecx=0x00000000 edx=0x00000000 > > 0x80000000 0x00: eax=0x8000001f ebx=0x68747541 ecx=0x444d4163 edx=0x69746e65 > > 0x80000001 0x00: eax=0x00800f11 ebx=0x20000000 ecx=0x35c233ff edx=0x2fd3fbff > > 0x80000002 0x00: eax=0x20444d41 ebx=0x657a7952 ecx=0x2037206e edx=0x30303831 > > 0x80000003 0x00: eax=0x69452058 ebx=0x2d746867 ecx=0x65726f43 edx=0x6f725020 > > 0x80000004 0x00: eax=0x73736563 ebx=0x2020726f ecx=0x20202020 edx=0x00202020 > > 0x80000005 0x00: eax=0xff40ff40 ebx=0xff40ff40 ecx=0x20080140 edx=0x40040140 > > 0x80000006 0x00: eax=0x26006400 ebx=0x66006400 ecx=0x02006140 edx=0x00808140 > > 0x80000007 0x00: eax=0x00000000 ebx=0x0000001b ecx=0x00000000 edx=0x00006599 > > 0x80000008 0x00: eax=0x00003030 ebx=0x00000007 ecx=0x0000400f edx=0x00000000 > > 0x80000009 0x00: eax=0x00000000 ebx=0x00000000 ecx=0x00000000 edx=0x00000000 > > 0x8000000a 0x00: eax=0x00000001 ebx=0x00008000 ecx=0x00000000 edx=0x0001bcff > > 0x8000000b 0x00: eax=0x00000000 ebx=0x00000000 ecx=0x00000000 edx=0x00000000 > > 0x8000000c 0x00: eax=0x00000000 ebx=0x00000000 ecx=0x00000000 edx=0x00000000 > > 0x8000000d 0x00: eax=0x00000000 ebx=0x00000000 ecx=0x00000000 edx=0x00000000 > > 0x8000000e 0x00: eax=0x00000000 ebx=0x00000000 ecx=0x00000000 edx=0x00000000 > > 0x8000000f 0x00: eax=0x00000000 ebx=0x00000000 ecx=0x00000000 edx=0x00000000 > > 0x80000010 0x00: eax=0x00000000 ebx=0x00000000 ecx=0x00000000 edx=0x00000000 > > 0x80000011 0x00: eax=0x00000000 ebx=0x00000000 ecx=0x00000000 edx=0x00000000 > > 0x80000012 0x00: eax=0x00000000 ebx=0x00000000 ecx=0x00000000 edx=0x00000000 > > 0x80000013 0x00: eax=0x00000000 ebx=0x00000000 ecx=0x00000000 edx=0x00000000 > > 0x80000014 0x00: eax=0x00000000 ebx=0x00000000 ecx=0x00000000 edx=0x00000000 > > 0x80000015 0x00: eax=0x00000000 ebx=0x00000000 ecx=0x00000000 edx=0x00000000 > > 0x80000016 0x00: eax=0x00000000 ebx=0x00000000 ecx=0x00000000 edx=0x00000000 > > 0x80000017 0x00: eax=0x00000000 ebx=0x00000000 ecx=0x00000000 edx=0x00000000 > > 0x80000018 0x00: eax=0x00000000 ebx=0x00000000 ecx=0x00000000 edx=0x00000000 > > 0x80000019 0x00: eax=0xf040f040 ebx=0x00000000 ecx=0x00000000 edx=0x00000000 > > 0x8000001a 0x00: eax=0x00000003 ebx=0x00000000 ecx=0x00000000 edx=0x00000000 > > 0x8000001b 0x00: eax=0x000003ff ebx=0x00000000 ecx=0x00000000 edx=0x00000000 > > 0x8000001c 0x00: eax=0x00000000 ebx=0x00000000 ecx=0x00000000 edx=0x00000000 > > 0x8000001d 0x00: eax=0x00004121 ebx=0x01c0003f ecx=0x0000003f edx=0x00000000 > > 0x8000001e 0x00: eax=0x00000009 ebx=0x00000104 ecx=0x00000000 edx=0x00000000 > > 0x8000001f 0x00: eax=0x00000007 ebx=0x0000016f ecx=0x0000000f edx=0x00000000 > > 0x80860000 0x00: eax=0x00000000 ebx=0x00000000 ecx=0x00000000 edx=0x00000000 > > 0xc0000000 0x00: eax=0x00000000 ebx=0x00000000 ecx=0x00000000 edx=0x00000000 > > > > warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 0] > > warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 1] > > warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 2] > > warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 3] > > warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 4] > > warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 5] > > warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 6] > > warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 7] > > warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 8] > > warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 9] > > warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 12] > > warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 13] > > warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 14] > > warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 15] > > warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 16] > > warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 17] > > warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 23] > > warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 24] > > {"QMP": {"version": {"qemu": {"micro": 0, "minor": 5, "major": 2}, "package": " (Debian 1:2.5+dfsg-5ubuntu10.11)"}, "capabilities": []}} > > warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 0] > > warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 1] > > warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 2] > > warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 3] > > warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 4] > > warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 5] > > warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 6] > > warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 7] > > warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 8] > > warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 9] > > warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 12] > > warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 13] > > warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 14] > > warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 15] > > warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 16] > > warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 17] > > warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 23] > > warning: host doesn't support requested feature: CPUID.80000001H:EDX [bit 24] > > {"return": {}} > > {"return": [{"cpuid-register": "EAX", "cpuid-input-eax": 6, "features": 4}, {"cpuid-register": "EAX", "cpuid-input-ecx": 1, "cpuid-input-eax": 13, "features": 7}, {"cpuid-register": "EDX", "cpuid-input-eax": 2147483658, "features": 9}, {"cpuid-register": "EAX", "cpuid-input-eax": 1073741825, "features": 16777467}, {"cpuid-register": "EDX", "cpuid-input-eax": 3221225473, "features": 0}, {"cpuid-register": "EDX", "cpuid-input-eax": 2147483655, "features": 0}, {"cpuid-register": "ECX", "cpuid-input-eax": 2147483649, "features": 1015}, {"cpuid-register": "EDX", "cpuid-input-eax": 2147483649, "features": 776996864}, {"cpuid-register": "EBX", "cpuid-input-ecx": 0, "cpuid-input-eax": 7, "features": 10224043}, {"cpuid-register": "ECX", "cpuid-input-eax": 1, "features": 4160238083}, {"cpuid-register": "EDX", "cpuid-input-eax": 1, "features": 126614527}], "id": "feature-words"} > > {"return": 23, "id": "family"} > > {"return": 1, "id": "model"} > > {"return": 1, "id": "stepping"} > > {"return": "AMD Ryzen 7 1800X Eight-Core Processor ", "id": "model-id"} > > {"return": {}} > > {"timestamp": {"seconds": 1493253066, "microseconds": 721689}, "event": "SHUTDOWN"} > > # > > ``` > > > > Thanks, > > Satoru > > > >> > >> Thanks, > >> > >> Paolo > >> > >>> ``` > >>> $ cat /proc/cpuinfo > >>> processor : 0 > >>> vendor_id : AuthenticAMD > >>> cpu family : 23 > >>> model : 1 > >>> model name : AMD Ryzen 7 1800X Eight-Core Processor > >>> stepping : 1 > >>> microcode : 0x800111c > >>> cpu MHz : 2200.000 > >>> cache size : 512 KB > >>> physical id : 0 > >>> siblings : 16 > >>> core id : 0 > >>> cpu cores : 8 > >>> apicid : 0 > >>> initial apicid : 0 > >>> fpu : yes > >>> fpu_exception : yes > >>> cpuid level : 13 > >>> wp : yes > >>> flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc extd_apicid aperfmperf eagerfpu pni pclmulqdq monitor ssse3 fma cx16 sse4_1 sse4_2 movbe popcnt aes xsave avx f16c rdrand lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw skinit wdt tce topoext perfctr_core perfctr_nb bpext perfctr_l2 mwaitx hw_pstate vmmcall fsgsbase bmi1 avx2 smep bmi2 rdseed adx smap clflushopt sha_ni xsaveopt xsavec xgetbv1 xsaves clzero irperf arat npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter pfthreshold avic overflow_recov succor smca > >>> bugs : fxsave_leak sysret_ss_attrs null_seg > >>> bogomips : 7186.66 > >>> TLB size : 2560 4K pages > >>> clflush size : 64 > >>> cache_alignment : 64 > >>> address sizes : 48 bits physical, 48 bits virtual > >>> power management: ts ttp tm hwpstate eff_freq_ro [13] [14] > >>> > >>> processor : 1 > >>> vendor_id : AuthenticAMD > >>> cpu family : 23 > >>> model : 1 > >>> model name : AMD Ryzen 7 1800X Eight-Core Processor > >>> stepping : 1 > >>> microcode : 0x800111c > >>> cpu MHz : 2200.000 > >>> cache size : 512 KB > >>> physical id : 0 > >>> siblings : 16 > >>> core id : 0 > >>> cpu cores : 8 > >>> apicid : 1 > >>> initial apicid : 1 > >>> fpu : yes > >>> fpu_exception : yes > >>> cpuid level : 13 > >>> wp : yes > >>> flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc extd_apicid aperfmperf eagerfpu pni pclmulqdq monitor ssse3 fma cx16 sse4_1 sse4_2 movbe popcnt aes xsave avx f16c rdrand lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw skinit wdt tce topoext perfctr_core perfctr_nb bpext perfctr_l2 mwaitx hw_pstate vmmcall fsgsbase bmi1 avx2 smep bmi2 rdseed adx smap clflushopt sha_ni xsaveopt xsavec xgetbv1 xsaves clzero irperf arat npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter pfthreshold avic overflow_recov succor smca > >>> bugs : fxsave_leak sysret_ss_attrs null_seg > >>> bogomips : 7186.66 > >>> TLB size : 2560 4K pages > >>> clflush size : 64 > >>> cache_alignment : 64 > >>> address sizes : 48 bits physical, 48 bits virtual > >>> power management: ts ttp tm hwpstate eff_freq_ro [13] [14] > >>> > >>> processor : 2 > >>> vendor_id : AuthenticAMD > >>> cpu family : 23 > >>> model : 1 > >>> model name : AMD Ryzen 7 1800X Eight-Core Processor > >>> stepping : 1 > >>> microcode : 0x800111c > >>> cpu MHz : 2200.000 > >>> cache size : 512 KB > >>> physical id : 0 > >>> siblings : 16 > >>> core id : 1 > >>> cpu cores : 8 > >>> apicid : 2 > >>> initial apicid : 2 > >>> fpu : yes > >>> fpu_exception : yes > >>> cpuid level : 13 > >>> wp : yes > >>> flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc extd_apicid aperfmperf eagerfpu pni pclmulqdq monitor ssse3 fma cx16 sse4_1 sse4_2 movbe popcnt aes xsave avx f16c rdrand lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw skinit wdt tce topoext perfctr_core perfctr_nb bpext perfctr_l2 mwaitx hw_pstate vmmcall fsgsbase bmi1 avx2 smep bmi2 rdseed adx smap clflushopt sha_ni xsaveopt xsavec xgetbv1 xsaves clzero irperf arat npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter pfthreshold avic overflow_recov succor smca > >>> bugs : fxsave_leak sysret_ss_attrs null_seg > >>> bogomips : 7186.66 > >>> TLB size : 2560 4K pages > >>> clflush size : 64 > >>> cache_alignment : 64 > >>> address sizes : 48 bits physical, 48 bits virtual > >>> power management: ts ttp tm hwpstate eff_freq_ro [13] [14] > >>> > >>> processor : 3 > >>> vendor_id : AuthenticAMD > >>> cpu family : 23 > >>> model : 1 > >>> model name : AMD Ryzen 7 1800X Eight-Core Processor > >>> stepping : 1 > >>> microcode : 0x800111c > >>> cpu MHz : 2200.000 > >>> cache size : 512 KB > >>> physical id : 0 > >>> siblings : 16 > >>> core id : 1 > >>> cpu cores : 8 > >>> apicid : 3 > >>> initial apicid : 3 > >>> fpu : yes > >>> fpu_exception : yes > >>> cpuid level : 13 > >>> wp : yes > >>> flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc extd_apicid aperfmperf eagerfpu pni pclmulqdq monitor ssse3 fma cx16 sse4_1 sse4_2 movbe popcnt aes xsave avx f16c rdrand lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw skinit wdt tce topoext perfctr_core perfctr_nb bpext perfctr_l2 mwaitx hw_pstate vmmcall fsgsbase bmi1 avx2 smep bmi2 rdseed adx smap clflushopt sha_ni xsaveopt xsavec xgetbv1 xsaves clzero irperf arat npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter pfthreshold avic overflow_recov succor smca > >>> bugs : fxsave_leak sysret_ss_attrs null_seg > >>> bogomips : 7186.66 > >>> TLB size : 2560 4K pages > >>> clflush size : 64 > >>> cache_alignment : 64 > >>> address sizes : 48 bits physical, 48 bits virtual > >>> power management: ts ttp tm hwpstate eff_freq_ro [13] [14] > >>> > >>> processor : 4 > >>> vendor_id : AuthenticAMD > >>> cpu family : 23 > >>> model : 1 > >>> model name : AMD Ryzen 7 1800X Eight-Core Processor > >>> stepping : 1 > >>> microcode : 0x800111c > >>> cpu MHz : 2200.000 > >>> cache size : 512 KB > >>> physical id : 0 > >>> siblings : 16 > >>> core id : 2 > >>> cpu cores : 8 > >>> apicid : 4 > >>> initial apicid : 4 > >>> fpu : yes > >>> fpu_exception : yes > >>> cpuid level : 13 > >>> wp : yes > >>> flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc extd_apicid aperfmperf eagerfpu pni pclmulqdq monitor ssse3 fma cx16 sse4_1 sse4_2 movbe popcnt aes xsave avx f16c rdrand lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw skinit wdt tce topoext perfctr_core perfctr_nb bpext perfctr_l2 mwaitx hw_pstate vmmcall fsgsbase bmi1 avx2 smep bmi2 rdseed adx smap clflushopt sha_ni xsaveopt xsavec xgetbv1 xsaves clzero irperf arat npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter pfthreshold avic overflow_recov succor smca > >>> bugs : fxsave_leak sysret_ss_attrs null_seg > >>> bogomips : 7186.66 > >>> TLB size : 2560 4K pages > >>> clflush size : 64 > >>> cache_alignment : 64 > >>> address sizes : 48 bits physical, 48 bits virtual > >>> power management: ts ttp tm hwpstate eff_freq_ro [13] [14] > >>> > >>> processor : 5 > >>> vendor_id : AuthenticAMD > >>> cpu family : 23 > >>> model : 1 > >>> model name : AMD Ryzen 7 1800X Eight-Core Processor > >>> stepping : 1 > >>> microcode : 0x800111c > >>> cpu MHz : 2200.000 > >>> cache size : 512 KB > >>> physical id : 0 > >>> siblings : 16 > >>> core id : 2 > >>> cpu cores : 8 > >>> apicid : 5 > >>> initial apicid : 5 > >>> fpu : yes > >>> fpu_exception : yes > >>> cpuid level : 13 > >>> wp : yes > >>> flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc extd_apicid aperfmperf eagerfpu pni pclmulqdq monitor ssse3 fma cx16 sse4_1 sse4_2 movbe popcnt aes xsave avx f16c rdrand lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw skinit wdt tce topoext perfctr_core perfctr_nb bpext perfctr_l2 mwaitx hw_pstate vmmcall fsgsbase bmi1 avx2 smep bmi2 rdseed adx smap clflushopt sha_ni xsaveopt xsavec xgetbv1 xsaves clzero irperf arat npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter pfthreshold avic overflow_recov succor smca > >>> bugs : fxsave_leak sysret_ss_attrs null_seg > >>> bogomips : 7186.66 > >>> TLB size : 2560 4K pages > >>> clflush size : 64 > >>> cache_alignment : 64 > >>> address sizes : 48 bits physical, 48 bits virtual > >>> power management: ts ttp tm hwpstate eff_freq_ro [13] [14] > >>> > >>> processor : 6 > >>> vendor_id : AuthenticAMD > >>> cpu family : 23 > >>> model : 1 > >>> model name : AMD Ryzen 7 1800X Eight-Core Processor > >>> stepping : 1 > >>> microcode : 0x800111c > >>> cpu MHz : 2200.000 > >>> cache size : 512 KB > >>> physical id : 0 > >>> siblings : 16 > >>> core id : 3 > >>> cpu cores : 8 > >>> apicid : 6 > >>> initial apicid : 6 > >>> fpu : yes > >>> fpu_exception : yes > >>> cpuid level : 13 > >>> wp : yes > >>> flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc extd_apicid aperfmperf eagerfpu pni pclmulqdq monitor ssse3 fma cx16 sse4_1 sse4_2 movbe popcnt aes xsave avx f16c rdrand lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw skinit wdt tce topoext perfctr_core perfctr_nb bpext perfctr_l2 mwaitx hw_pstate vmmcall fsgsbase bmi1 avx2 smep bmi2 rdseed adx smap clflushopt sha_ni xsaveopt xsavec xgetbv1 xsaves clzero irperf arat npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter pfthreshold avic overflow_recov succor smca > >>> bugs : fxsave_leak sysret_ss_attrs null_seg > >>> bogomips : 7186.66 > >>> TLB size : 2560 4K pages > >>> clflush size : 64 > >>> cache_alignment : 64 > >>> address sizes : 48 bits physical, 48 bits virtual > >>> power management: ts ttp tm hwpstate eff_freq_ro [13] [14] > >>> > >>> processor : 7 > >>> vendor_id : AuthenticAMD > >>> cpu family : 23 > >>> model : 1 > >>> model name : AMD Ryzen 7 1800X Eight-Core Processor > >>> stepping : 1 > >>> microcode : 0x800111c > >>> cpu MHz : 2200.000 > >>> cache size : 512 KB > >>> physical id : 0 > >>> siblings : 16 > >>> core id : 3 > >>> cpu cores : 8 > >>> apicid : 7 > >>> initial apicid : 7 > >>> fpu : yes > >>> fpu_exception : yes > >>> cpuid level : 13 > >>> wp : yes > >>> flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc extd_apicid aperfmperf eagerfpu pni pclmulqdq monitor ssse3 fma cx16 sse4_1 sse4_2 movbe popcnt aes xsave avx f16c rdrand lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw skinit wdt tce topoext perfctr_core perfctr_nb bpext perfctr_l2 mwaitx hw_pstate vmmcall fsgsbase bmi1 avx2 smep bmi2 rdseed adx smap clflushopt sha_ni xsaveopt xsavec xgetbv1 xsaves clzero irperf arat npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter pfthreshold avic overflow_recov succor smca > >>> bugs : fxsave_leak sysret_ss_attrs null_seg > >>> bogomips : 7186.66 > >>> TLB size : 2560 4K pages > >>> clflush size : 64 > >>> cache_alignment : 64 > >>> address sizes : 48 bits physical, 48 bits virtual > >>> power management: ts ttp tm hwpstate eff_freq_ro [13] [14] > >>> > >>> processor : 8 > >>> vendor_id : AuthenticAMD > >>> cpu family : 23 > >>> model : 1 > >>> model name : AMD Ryzen 7 1800X Eight-Core Processor > >>> stepping : 1 > >>> microcode : 0x800111c > >>> cpu MHz : 2200.000 > >>> cache size : 512 KB > >>> physical id : 0 > >>> siblings : 16 > >>> core id : 4 > >>> cpu cores : 8 > >>> apicid : 8 > >>> initial apicid : 8 > >>> fpu : yes > >>> fpu_exception : yes > >>> cpuid level : 13 > >>> wp : yes > >>> flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc extd_apicid aperfmperf eagerfpu pni pclmulqdq monitor ssse3 fma cx16 sse4_1 sse4_2 movbe popcnt aes xsave avx f16c rdrand lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw skinit wdt tce topoext perfctr_core perfctr_nb bpext perfctr_l2 mwaitx hw_pstate vmmcall fsgsbase bmi1 avx2 smep bmi2 rdseed adx smap clflushopt sha_ni xsaveopt xsavec xgetbv1 xsaves clzero irperf arat npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter pfthreshold avic overflow_recov succor smca > >>> bugs : fxsave_leak sysret_ss_attrs null_seg > >>> bogomips : 7186.66 > >>> TLB size : 2560 4K pages > >>> clflush size : 64 > >>> cache_alignment : 64 > >>> address sizes : 48 bits physical, 48 bits virtual > >>> power management: ts ttp tm hwpstate eff_freq_ro [13] [14] > >>> > >>> processor : 9 > >>> vendor_id : AuthenticAMD > >>> cpu family : 23 > >>> model : 1 > >>> model name : AMD Ryzen 7 1800X Eight-Core Processor > >>> stepping : 1 > >>> microcode : 0x800111c > >>> cpu MHz : 2200.000 > >>> cache size : 512 KB > >>> physical id : 0 > >>> siblings : 16 > >>> core id : 4 > >>> cpu cores : 8 > >>> apicid : 9 > >>> initial apicid : 9 > >>> fpu : yes > >>> fpu_exception : yes > >>> cpuid level : 13 > >>> wp : yes > >>> flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc extd_apicid aperfmperf eagerfpu pni pclmulqdq monitor ssse3 fma cx16 sse4_1 sse4_2 movbe popcnt aes xsave avx f16c rdrand lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw skinit wdt tce topoext perfctr_core perfctr_nb bpext perfctr_l2 mwaitx hw_pstate vmmcall fsgsbase bmi1 avx2 smep bmi2 rdseed adx smap clflushopt sha_ni xsaveopt xsavec xgetbv1 xsaves clzero irperf arat npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter pfthreshold avic overflow_recov succor smca > >>> bugs : fxsave_leak sysret_ss_attrs null_seg > >>> bogomips : 7186.66 > >>> TLB size : 2560 4K pages > >>> clflush size : 64 > >>> cache_alignment : 64 > >>> address sizes : 48 bits physical, 48 bits virtual > >>> power management: ts ttp tm hwpstate eff_freq_ro [13] [14] > >>> > >>> processor : 10 > >>> vendor_id : AuthenticAMD > >>> cpu family : 23 > >>> model : 1 > >>> model name : AMD Ryzen 7 1800X Eight-Core Processor > >>> stepping : 1 > >>> microcode : 0x800111c > >>> cpu MHz : 2200.000 > >>> cache size : 512 KB > >>> physical id : 0 > >>> siblings : 16 > >>> core id : 5 > >>> cpu cores : 8 > >>> apicid : 10 > >>> initial apicid : 10 > >>> fpu : yes > >>> fpu_exception : yes > >>> cpuid level : 13 > >>> wp : yes > >>> flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc extd_apicid aperfmperf eagerfpu pni pclmulqdq monitor ssse3 fma cx16 sse4_1 sse4_2 movbe popcnt aes xsave avx f16c rdrand lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw skinit wdt tce topoext perfctr_core perfctr_nb bpext perfctr_l2 mwaitx hw_pstate vmmcall fsgsbase bmi1 avx2 smep bmi2 rdseed adx smap clflushopt sha_ni xsaveopt xsavec xgetbv1 xsaves clzero irperf arat npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter pfthreshold avic overflow_recov succor smca > >>> bugs : fxsave_leak sysret_ss_attrs null_seg > >>> bogomips : 7186.66 > >>> TLB size : 2560 4K pages > >>> clflush size : 64 > >>> cache_alignment : 64 > >>> address sizes : 48 bits physical, 48 bits virtual > >>> power management: ts ttp tm hwpstate eff_freq_ro [13] [14] > >>> > >>> processor : 11 > >>> vendor_id : AuthenticAMD > >>> cpu family : 23 > >>> model : 1 > >>> model name : AMD Ryzen 7 1800X Eight-Core Processor > >>> stepping : 1 > >>> microcode : 0x800111c > >>> cpu MHz : 2200.000 > >>> cache size : 512 KB > >>> physical id : 0 > >>> siblings : 16 > >>> core id : 5 > >>> cpu cores : 8 > >>> apicid : 11 > >>> initial apicid : 11 > >>> fpu : yes > >>> fpu_exception : yes > >>> cpuid level : 13 > >>> wp : yes > >>> flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc extd_apicid aperfmperf eagerfpu pni pclmulqdq monitor ssse3 fma cx16 sse4_1 sse4_2 movbe popcnt aes xsave avx f16c rdrand lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw skinit wdt tce topoext perfctr_core perfctr_nb bpext perfctr_l2 mwaitx hw_pstate vmmcall fsgsbase bmi1 avx2 smep bmi2 rdseed adx smap clflushopt sha_ni xsaveopt xsavec xgetbv1 xsaves clzero irperf arat npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter pfthreshold avic overflow_recov succor smca > >>> bugs : fxsave_leak sysret_ss_attrs null_seg > >>> bogomips : 7186.66 > >>> TLB size : 2560 4K pages > >>> clflush size : 64 > >>> cache_alignment : 64 > >>> address sizes : 48 bits physical, 48 bits virtual > >>> power management: ts ttp tm hwpstate eff_freq_ro [13] [14] > >>> > >>> processor : 12 > >>> vendor_id : AuthenticAMD > >>> cpu family : 23 > >>> model : 1 > >>> model name : AMD Ryzen 7 1800X Eight-Core Processor > >>> stepping : 1 > >>> microcode : 0x800111c > >>> cpu MHz : 2200.000 > >>> cache size : 512 KB > >>> physical id : 0 > >>> siblings : 16 > >>> core id : 6 > >>> cpu cores : 8 > >>> apicid : 12 > >>> initial apicid : 12 > >>> fpu : yes > >>> fpu_exception : yes > >>> cpuid level : 13 > >>> wp : yes > >>> flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc extd_apicid aperfmperf eagerfpu pni pclmulqdq monitor ssse3 fma cx16 sse4_1 sse4_2 movbe popcnt aes xsave avx f16c rdrand lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw skinit wdt tce topoext perfctr_core perfctr_nb bpext perfctr_l2 mwaitx hw_pstate vmmcall fsgsbase bmi1 avx2 smep bmi2 rdseed adx smap clflushopt sha_ni xsaveopt xsavec xgetbv1 xsaves clzero irperf arat npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter pfthreshold avic overflow_recov succor smca > >>> bugs : fxsave_leak sysret_ss_attrs null_seg > >>> bogomips : 7186.66 > >>> TLB size : 2560 4K pages > >>> clflush size : 64 > >>> cache_alignment : 64 > >>> address sizes : 48 bits physical, 48 bits virtual > >>> power management: ts ttp tm hwpstate eff_freq_ro [13] [14] > >>> > >>> processor : 13 > >>> vendor_id : AuthenticAMD > >>> cpu family : 23 > >>> model : 1 > >>> model name : AMD Ryzen 7 1800X Eight-Core Processor > >>> stepping : 1 > >>> microcode : 0x800111c > >>> cpu MHz : 2200.000 > >>> cache size : 512 KB > >>> physical id : 0 > >>> siblings : 16 > >>> core id : 6 > >>> cpu cores : 8 > >>> apicid : 13 > >>> initial apicid : 13 > >>> fpu : yes > >>> fpu_exception : yes > >>> cpuid level : 13 > >>> wp : yes > >>> flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc extd_apicid aperfmperf eagerfpu pni pclmulqdq monitor ssse3 fma cx16 sse4_1 sse4_2 movbe popcnt aes xsave avx f16c rdrand lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw skinit wdt tce topoext perfctr_core perfctr_nb bpext perfctr_l2 mwaitx hw_pstate vmmcall fsgsbase bmi1 avx2 smep bmi2 rdseed adx smap clflushopt sha_ni xsaveopt xsavec xgetbv1 xsaves clzero irperf arat npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter pfthreshold avic overflow_recov succor smca > >>> bugs : fxsave_leak sysret_ss_attrs null_seg > >>> bogomips : 7186.66 > >>> TLB size : 2560 4K pages > >>> clflush size : 64 > >>> cache_alignment : 64 > >>> address sizes : 48 bits physical, 48 bits virtual > >>> power management: ts ttp tm hwpstate eff_freq_ro [13] [14] > >>> > >>> processor : 14 > >>> vendor_id : AuthenticAMD > >>> cpu family : 23 > >>> model : 1 > >>> model name : AMD Ryzen 7 1800X Eight-Core Processor > >>> stepping : 1 > >>> microcode : 0x800111c > >>> cpu MHz : 2200.000 > >>> cache size : 512 KB > >>> physical id : 0 > >>> siblings : 16 > >>> core id : 7 > >>> cpu cores : 8 > >>> apicid : 14 > >>> initial apicid : 14 > >>> fpu : yes > >>> fpu_exception : yes > >>> cpuid level : 13 > >>> wp : yes > >>> flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc extd_apicid aperfmperf eagerfpu pni pclmulqdq monitor ssse3 fma cx16 sse4_1 sse4_2 movbe popcnt aes xsave avx f16c rdrand lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw skinit wdt tce topoext perfctr_core perfctr_nb bpext perfctr_l2 mwaitx hw_pstate vmmcall fsgsbase bmi1 avx2 smep bmi2 rdseed adx smap clflushopt sha_ni xsaveopt xsavec xgetbv1 xsaves clzero irperf arat npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter pfthreshold avic overflow_recov succor smca > >>> bugs : fxsave_leak sysret_ss_attrs null_seg > >>> bogomips : 7186.66 > >>> TLB size : 2560 4K pages > >>> clflush size : 64 > >>> cache_alignment : 64 > >>> address sizes : 48 bits physical, 48 bits virtual > >>> power management: ts ttp tm hwpstate eff_freq_ro [13] [14] > >>> > >>> processor : 15 > >>> vendor_id : AuthenticAMD > >>> cpu family : 23 > >>> model : 1 > >>> model name : AMD Ryzen 7 1800X Eight-Core Processor > >>> stepping : 1 > >>> microcode : 0x800111c > >>> cpu MHz : 2200.000 > >>> cache size : 512 KB > >>> physical id : 0 > >>> siblings : 16 > >>> core id : 7 > >>> cpu cores : 8 > >>> apicid : 15 > >>> initial apicid : 15 > >>> fpu : yes > >>> fpu_exception : yes > >>> cpuid level : 13 > >>> wp : yes > >>> flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc extd_apicid aperfmperf eagerfpu pni pclmulqdq monitor ssse3 fma cx16 sse4_1 sse4_2 movbe popcnt aes xsave avx f16c rdrand lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw skinit wdt tce topoext perfctr_core perfctr_nb bpext perfctr_l2 mwaitx hw_pstate vmmcall fsgsbase bmi1 avx2 smep bmi2 rdseed adx smap clflushopt sha_ni xsaveopt xsavec xgetbv1 xsaves clzero irperf arat npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter pfthreshold avic overflow_recov succor smca > >>> bugs : fxsave_leak sysret_ss_attrs null_seg > >>> bogomips : 7186.66 > >>> TLB size : 2560 4K pages > >>> clflush size : 64 > >>> cache_alignment : 64 > >>> address sizes : 48 bits physical, 48 bits virtual > >>> power management: ts ttp tm hwpstate eff_freq_ro [13] [14] > >>> > >>> ``` > >>> > >>> Regards, > >>> Satoru > >>> > >>> > >>>> > >>>> Thanks, > >>>> > >>>> Paolo ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [BUG] x86: failed to boot a kernel on a Ryzen machine 2017-04-24 13:09 ` Satoru Takeuchi 2017-04-25 9:36 ` Borislav Petkov @ 2017-04-25 14:58 ` Masami Hiramatsu 2017-04-26 11:56 ` Satoru Takeuchi 1 sibling, 1 reply; 18+ messages in thread From: Masami Hiramatsu @ 2017-04-25 14:58 UTC (permalink / raw) To: Satoru Takeuchi; +Cc: Borislav Petkov, x86, linux-kernel Hello, 2017-04-24 22:09 GMT+09:00 Satoru Takeuchi <satoru.takeuchi@gmail.com>: > At Mon, 24 Apr 2017 14:48:46 +0200, > Borislav Petkov wrote: >> >> On Mon, Apr 24, 2017 at 09:39:12PM +0900, Satoru Takeuchi wrote: >> > I used the following auto-test tool (its backend is ktest). >> > >> > https://github.com/satoru-takeuchi/elkdat >> > >> > This problem can be reproduced by the following command on Ubuntu 16.04. >> > >> > ``` >> > $ sudo apt-get install git vagrant libvirt-bin libvirt-dev kernel-package qemu-kvm libssl-dev libncurses5-dev >> >> Can you minimize that reproducer? I.e, can you dump only the qemu >> command line options from this setup? >> >> They're enough to be able to start a guest with your config without me >> having to install all that other stuff. > > OK. Is it sufficient information? > > ``` > qemu-system-x86_64 -enable-kvm -name elkdat_ktest -S -machine pc-i440fx-xenial,accel=kvm,usb=off -cpu Opteron_G3,+smap,+adx,+rdseed,+bmi2,+smep,+avx2,+bmi1,+fsgsbase,+perfctr_nb,+perfctr_core,+topoext,+tce,+wdt,+skinit,+osvw, +3dnowprefetch,+cr8legacy,+extapic,+cmp_legacy,+pdpe1gb,+fxsr_opt,+mmxext,+rdrand,+f16c,+avx,+osxsave,+xsave,+aes,+movbe,+sse4.2,+sse4.1,+fma,+ssse3,+pclmuldq,+ht, +vme -m 512 -realtime mlock=off -smp 2,sockets=2,cores=1,threads=1 -uuid 12de0e96-5d01-4ab0-b0b3-165f55999960 -no-user-config -nodefaults -chardev socket,id=charmonitor,path=/var/lib/libvirt/qemu/domain-elkdat_ktest/monitor.sock,server,nowait -mon chardev=charmonitor,id=monitor,mode=control -rtc base=utc -no-shutdown -boot strict=on -device piix3-usb-uhci,id=usb,bus=pci.0,addr=0x1.0x2 -drive file=/var/lib/libvirt/images/ elkdat_ktest.img,format=qcow2,if=none,id=drive-virtio-disk0 -device virtio-blk-pci,scsi=off,bus=pci.0,addr=0x3,drive=drive-virtio-disk0,id=virtio- disk0,bootindex=1 -netdev tap,fd=26,id=h > ostnet0,vhost=on,vhostfd=28 -device virtio-net-pci,netdev=hostnet0,id=net0,mac=52:54:00:e4:6f:3e,bus=pci.0,addr=0x5 -chardev pty,id=charserial0 -device isa-serial,chardev=charserial0,id=serial0 -vnc 127.0.0.1:0 -k en-us -device cirrus-vga,id=video0,bus=pci.0,addr=0x2 -device virtio-balloon-pci,id=balloon0,bus=pci.0,addr=0x4 -msg timestamp=on > ``` I also could reproduce this with Fedora 25 on Core i7-4770S, with below options. "-cpu Opteron_G3,+smap,+adx,+rdseed,+bmi2,+smep,+avx2,+bmi1,+fsgsbase,+perfctr_nb,+perfctr_core,+topoext,+tce,+wdt,+skinit,+osvw,+3dnowprefetch,+cr8legacy,+extapic,+cmp_legacy,+pdpe1gb,+fxsr_opt,+mmxext,+rdrand,+f16c,+avx,+osxsave,+xsave,+aes,+movbe,+sse4.2,+sse4.1,+fma,+ssse3,+pclmuldq,+vme -M pc -enable-kvm -M pc -enable-kvm " And a quick investigation showed that this crash happened when I replaced the "Opteron_G3" with "Opteron_G2", "Opteron_G1", "Westmere" and "Nehalem" (I didn't check older than that). But I didn't see the crash when I specify "Opteron_G4" or "Opteron_G5", or newer than "SandyBridge". So, I guess this maybe caused by the combinations of cpu model and flags which must not exist, maybe qemu changes available instruction set based on cpu model, but linux checks only cpu feature flag. Thank you, -- Masami Hiramatsu <mhiramat@kernel.org> ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [BUG] x86: failed to boot a kernel on a Ryzen machine 2017-04-25 14:58 ` Masami Hiramatsu @ 2017-04-26 11:56 ` Satoru Takeuchi 2017-04-26 12:51 ` Borislav Petkov 0 siblings, 1 reply; 18+ messages in thread From: Satoru Takeuchi @ 2017-04-26 11:56 UTC (permalink / raw) To: Masami Hiramatsu; +Cc: Satoru Takeuchi, Borislav Petkov, x86, linux-kernel At Tue, 25 Apr 2017 23:58:50 +0900, Masami Hiramatsu wrote: > > Hello, > > 2017-04-24 22:09 GMT+09:00 Satoru Takeuchi <satoru.takeuchi@gmail.com>: > > At Mon, 24 Apr 2017 14:48:46 +0200, > > Borislav Petkov wrote: > >> > >> On Mon, Apr 24, 2017 at 09:39:12PM +0900, Satoru Takeuchi wrote: > >> > I used the following auto-test tool (its backend is ktest). > >> > > >> > https://github.com/satoru-takeuchi/elkdat > >> > > >> > This problem can be reproduced by the following command on Ubuntu 16.04. > >> > > >> > ``` > >> > $ sudo apt-get install git vagrant libvirt-bin libvirt-dev kernel-package qemu-kvm libssl-dev libncurses5-dev > >> > >> Can you minimize that reproducer? I.e, can you dump only the qemu > >> command line options from this setup? > >> > >> They're enough to be able to start a guest with your config without me > >> having to install all that other stuff. > > > > OK. Is it sufficient information? > > > > ``` > > qemu-system-x86_64 -enable-kvm -name elkdat_ktest -S -machine pc-i440fx-xenial,accel=kvm,usb=off -cpu Opteron_G3,+smap,+adx,+rdseed,+bmi2,+smep,+avx2,+bmi1,+fsgsbase,+perfctr_nb,+perfctr_core,+topoext,+tce,+wdt,+skinit,+osvw, > +3dnowprefetch,+cr8legacy,+extapic,+cmp_legacy,+pdpe1gb,+fxsr_opt,+mmxext,+rdrand,+f16c,+avx,+osxsave,+xsave,+aes,+movbe,+sse4.2,+sse4.1,+fma,+ssse3,+pclmuldq,+ht, > +vme -m 512 -realtime mlock=off -smp 2,sockets=2,cores=1,threads=1 -uuid 12de0e96-5d01-4ab0-b0b3-165f55999960 -no-user-config -nodefaults -chardev > socket,id=charmonitor,path=/var/lib/libvirt/qemu/domain-elkdat_ktest/monitor.sock,server,nowait -mon chardev=charmonitor,id=monitor,mode=control -rtc > base=utc -no-shutdown -boot strict=on -device piix3-usb-uhci,id=usb,bus=pci.0,addr=0x1.0x2 -drive file=/var/lib/libvirt/images/ > elkdat_ktest.img,format=qcow2,if=none,id=drive-virtio-disk0 -device virtio-blk-pci,scsi=off,bus=pci.0,addr=0x3,drive=drive-virtio-disk0,id=virtio- > disk0,bootindex=1 -netdev tap,fd=26,id=h > > ostnet0,vhost=on,vhostfd=28 -device virtio-net-pci,netdev=hostnet0,id=net0,mac=52:54:00:e4:6f:3e,bus=pci.0,addr=0x5 -chardev > pty,id=charserial0 -device isa-serial,chardev=charserial0,id=serial0 -vnc 127.0.0.1:0 -k en-us -device cirrus-vga,id=video0,bus=pci.0,addr=0x2 -device > virtio-balloon-pci,id=balloon0,bus=pci.0,addr=0x4 -msg timestamp=on > > ``` > > I also could reproduce this with Fedora 25 on Core i7-4770S, > with below options. > > "-cpu Opteron_G3,+smap,+adx,+rdseed,+bmi2,+smep,+avx2,+bmi1,+fsgsbase,+perfctr_nb,+perfctr_core,+topoext,+tce,+wdt,+skinit,+osvw,+3dnowprefetch,+cr8legacy,+extapic,+cmp_legacy,+pdpe1gb,+fxsr_opt,+mmxext,+rdrand,+f16c,+avx,+osxsave,+xsave,+aes,+movbe,+sse4.2,+sse4.1,+fma,+ssse3,+pclmuldq,+vme -M pc -enable-kvm -M pc -enable-kvm " > > And a quick investigation showed that this crash happened when I > replaced the "Opteron_G3" with "Opteron_G2", "Opteron_G1", "Westmere" > and "Nehalem" (I didn't check older than that). But I didn't see the > crash when I specify "Opteron_G4" or "Opteron_G5", or newer than > "SandyBridge". > > So, I guess this maybe caused by the combinations of cpu model and > flags which must not exist, maybe qemu changes available instruction > set based on cpu model, but linux checks only cpu feature flag. Yeah, probably so. I succeeded to boot my own kernel with "Opteron_G5" model and disabling "fma4", "tbm", and "xop" which Ryzen doesn't support. As Paolo said in other mail, The boot also succeeded with "host-passthrough" mode rather than "host-model". I'll wait for adding "Ryzen (or Zen?)" model to qemu. Regards, Satoru > > Thank you, > > -- > Masami Hiramatsu <mhiramat@kernel.org> ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [BUG] x86: failed to boot a kernel on a Ryzen machine 2017-04-26 11:56 ` Satoru Takeuchi @ 2017-04-26 12:51 ` Borislav Petkov 0 siblings, 0 replies; 18+ messages in thread From: Borislav Petkov @ 2017-04-26 12:51 UTC (permalink / raw) To: Satoru Takeuchi; +Cc: Masami Hiramatsu, x86, linux-kernel On Wed, Apr 26, 2017 at 08:56:24PM +0900, Satoru Takeuchi wrote: > As Paolo said in other mail, The boot also succeeded with "host-passthrough" mode rather than > "host-model". I'll wait for adding "Ryzen (or Zen?)" model to qemu. Yah, whoever adds it, let's call it "zen" or "Zen". Ryzen is some client marketing name while zen is the microarchitecture name of F17h and future. -- Regards/Gruss, Boris. Good mailing practices for 400: avoid top-posting and trim the reply. ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [BUG] x86: failed to boot a kernel on a Ryzen machine 2017-04-24 6:58 [BUG] x86: failed to boot a kernel on a Ryzen machine Satoru Takeuchi 2017-04-24 11:07 ` Borislav Petkov @ 2017-04-24 11:27 ` Satoru Takeuchi 2017-04-25 7:45 ` Jon Masters 1 sibling, 1 reply; 18+ messages in thread From: Satoru Takeuchi @ 2017-04-24 11:27 UTC (permalink / raw) To: x86, linux-kernel, kvm At Mon, 24 Apr 2017 15:58:05 +0900, Satoru Takeuchi wrote: > > [1 <text/plain; US-ASCII (7bit)>] > Recently I bought a new Ryzen machine. When I tried to test v4.11-rc8 on it, it failed to boot > with the following panic log. > > ``` > ... > [ 0.227720] raid6: sse2x1 gen() 7985 MB/s > [ 0.295709] raid6: sse2x1 xor() 8181 MB/s > [ 0.363706] raid6: sse2x2 gen() 17531 MB/s > [ 0.431699] raid6: sse2x2 xor() 11098 MB/s > [ 0.499693] raid6: sse2x4 gen() 18509 MB/s > [ 0.567688] raid6: sse2x4 xor() 10177 MB/s > [ 0.571692] invalid opcode: 0000 [#1] SMP > [ 0.572312] Modules linked in: > [ 0.572822] CPU: 0 PID: 1 Comm: swapper/0 Not tainted 4.11.0-rc8-ktest #1 > [ 0.573734] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS Ubuntu-1.8.2-1ubuntu1 04/01/2014 > [ 0.575040] task: ffff8f791e1c0000 task.stack: ffff9c72c00d0000 > [ 0.575865] RIP: 0010:raid6_avx21_gen_syndrome+0x3d/0x120 > [ 0.576634] RSP: 0018:ffff9c72c00d3d70 EFLAGS: 00010246 > [ 0.577376] RAX: 0000000000000000 RBX: ffff9c72c00d3dc0 RCX: 00000000fffedb97 > [ 0.578327] RDX: 0000000000000000 RSI: 0000000000001000 RDI: 0000000000000012 > [ 0.579283] RBP: ffff9c72c00d3da0 R08: 0000000000000000 R09: 00000000000000cd > [ 0.580243] R10: 00000000fffedb86 R11: ffffffffa617008d R12: 0000000000001000 > [ 0.581211] R13: ffff8f791e39e000 R14: ffff8f791e39f000 R15: 0000000000000012 > [ 0.582163] FS: 0000000000000000(0000) GS:ffff8f791fc00000(0000) knlGS:0000000000000000 > [ 0.583324] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 > [ 0.584128] CR2: 0000000000000000 CR3: 000000001be09000 CR4: 00000000003006f0 > [ 0.585078] Call Trace: > [ 0.594952] raid6_select_algo+0x116/0x30b > [ 0.595592] ? libcrc32c_mod_init+0x2b/0x2b > [ 0.596240] do_one_initcall+0x53/0x1a0 > [ 0.596843] ? parse_args+0x2cf/0x490 > [ 0.597421] kernel_init_freeable+0x182/0x21c > [ 0.598077] ? rest_init+0x80/0x80 > [ 0.598626] kernel_init+0xe/0x100 > [ 0.599175] ret_from_fork+0x2c/0x40 > [ 0.599741] Code: 55 41 54 53 48 89 d3 48 8d 14 c5 00 00 00 00 41 89 ff 49 89 f4 48 83 ec 08 4c 8b 2c c3 4c 8b 74 13 08 48 89 55 d0 e8 53 ed a9 ff <c5> fd 6f 05 2b 2d 4e 00 c5 e5 ef db 4d 85 e4 48 8b 55 d0 0f 84 > [ 0.602215] RIP: raid6_avx21_gen_syndrome+0x3d/0x120 RSP: ffff9c72c00d3d70 > [ 0.603154] ---[ end trace 17ee01f86b8fc548 ]--- > [ 0.603850] Kernel panic - not syncing: Attempted to kill init! exitcode=0x0000000b > [ 0.603850] > [ 0.605276] ---[ end Kernel panic - not syncing: Attempted to kill init! exitcode=0x0000000b > ... > ``` > > This panic occured at lib/raid6/avx2.c#raid6_avx21_gen_syndrome() and this > function consists of many AVX instructions. > > lib/raid6/avx2.c: > ``` > /* > * Plain AVX2 implementation > */ > static void raid6_avx21_gen_syndrome(int disks, size_t bytes, void **ptrs) > { > u8 **dptr = (u8 **)ptrs; > u8 *p, *q; > int d, z, z0; > > z0 = disks - 3; /* Highest data disk */ > p = dptr[z0+1]; /* XOR parity */ > q = dptr[z0+2]; /* RS syndrome */ > > kernel_fpu_begin(); > > asm volatile("vmovdqa %0,%%ymm0" : : "m" (raid6_avx2_constants.x1d[0])); > asm volatile("vpxor %ymm3,%ymm3,%ymm3"); /* Zero temp */ > > for (d = 0; d < bytes; d += 32) { > asm volatile("prefetchnta %0" : : "m" (dptr[z0][d])); > asm volatile("vmovdqa %0,%%ymm2" : : "m" (dptr[z0][d]));/* P[0] */ > asm volatile("prefetchnta %0" : : "m" (dptr[z0-1][d])); > asm volatile("vmovdqa %ymm2,%ymm4");/* Q[0] */ > asm volatile("vmovdqa %0,%%ymm6" : : "m" (dptr[z0-1][d])); > for (z = z0-2; z >= 0; z--) { > asm volatile("prefetchnta %0" : : "m" (dptr[z][d])); > asm volatile("vpcmpgtb %ymm4,%ymm3,%ymm5"); > asm volatile("vpaddb %ymm4,%ymm4,%ymm4"); > asm volatile("vpand %ymm0,%ymm5,%ymm5"); > asm volatile("vpxor %ymm5,%ymm4,%ymm4"); > asm volatile("vpxor %ymm6,%ymm2,%ymm2"); > asm volatile("vpxor %ymm6,%ymm4,%ymm4"); > asm volatile("vmovdqa %0,%%ymm6" : : "m" (dptr[z][d])); > } > asm volatile("vpcmpgtb %ymm4,%ymm3,%ymm5"); > asm volatile("vpaddb %ymm4,%ymm4,%ymm4"); > asm volatile("vpand %ymm0,%ymm5,%ymm5"); > asm volatile("vpxor %ymm5,%ymm4,%ymm4"); > asm volatile("vpxor %ymm6,%ymm2,%ymm2"); > asm volatile("vpxor %ymm6,%ymm4,%ymm4"); > > asm volatile("vmovntdq %%ymm2,%0" : "=m" (p[d])); > asm volatile("vpxor %ymm2,%ymm2,%ymm2"); > asm volatile("vmovntdq %%ymm4,%0" : "=m" (q[d])); > asm volatile("vpxor %ymm4,%ymm4,%ymm4"); > } > > asm volatile("sfence" : : : "memory"); > kernel_fpu_end(); > } > > ``` > > This problem can be bypassed by the following patch. > > ``` > diff --git a/arch/x86/Makefile b/arch/x86/Makefile > index 2d44933..b589097 100644 > --- a/arch/x86/Makefile > +++ b/arch/x86/Makefile > @@ -162,7 +162,7 @@ asinstr := $(call as-instr,fxsaveq (%rax),-DCONFIG_AS_FXSAVEQ=1) > asinstr += $(call as-instr,pshufb %xmm0$(comma)%xmm0,-DCONFIG_AS_SSSE3=1) > asinstr += $(call as-instr,crc32l %eax$(comma)%eax,-DCONFIG_AS_CRC32=1) > avx_instr := $(call as-instr,vxorps %ymm0$(comma)%ymm1$(comma)%ymm2,-DCONFIG_AS_AVX=1) > -avx2_instr :=$(call as-instr,vpbroadcastb %xmm0$(comma)%ymm1,-DCONFIG_AS_AVX2=1) > +#avx2_instr :=$(call as-instr,vpbroadcastb %xmm0$(comma)%ymm1,-DCONFIG_AS_AVX2=1) > avx512_instr :=$(call as-instr,vpmovm2b %k1$(comma)%zmm5,-DCONFIG_AS_AVX512=1) > sha1_ni_instr :=$(call as-instr,sha1msg1 %xmm0$(comma)%xmm1,-DCONFIG_AS_SHA1_NI=1) > sha256_ni_instr :=$(call as-instr,sha256msg1 %xmm0$(comma)%xmm1,-DCONFIG_AS_SHA256_NI=1) > > ``` > > I suspect that there is a problem about handling AVX2 in the linux kernel or in Ryzen. > > # Build environent > > ## Hardware > > CPU: Ryzen 1800x > > ## Software > > - distro: Ubuntu 16.04 x86_64 > - gcc: gcc (Ubuntu 5.4.0-6ubuntu1~16.04.4) 5.4.0 20160609 > > ## Build target kernel version > > linux v4.11-r8 > > ## Test environment > > ## Hardware > > A VM running on the above mentioned hardware. > > ## Software > > - distro: Ubuntu 16.04 > > # Additional information > > - .config is attached in this mail > - This problam also happens on v4.10 > - When I tested v4.10 in my previous Core i5 machine, it succeeded to boot. Add "kvm@vger.kernel.org" to this thread. Here is the more additional information. I suspect that this is a problem related to virtualization. I ran the following program simulates raid6_avx21_gen_syndrome() in kernel both on the host and on the guest. ``` #include <stdio.h> #include <stdlib.h> #include <errno.h> #include <err.h> #define PAGESIZE 4096 #define DISKS 4 typedef unsigned char u8; typedef unsigned long u64; static const struct raid6_avx2_constants { u64 x1d[4]; } raid6_avx2_constants __attribute__((aligned(32))) = { { 0x1d1d1d1d1d1d1d1dULL, 0x1d1d1d1d1d1d1d1dULL, 0x1d1d1d1d1d1d1d1dULL, 0x1d1d1d1d1d1d1d1dULL,}, }; static void raid6_avx21_gen_syndrome(int disks, size_t bytes, void **ptrs) { u8 **dptr = (u8 **)ptrs; u8 *p, *q; int d, z, z0; z0 = disks - 3; /* Highest data disk */ p = dptr[z0+1]; /* XOR parity */ q = dptr[z0+2]; /* RS syndrome */ asm volatile("vmovdqa %0,%%ymm0" : : "m" (raid6_avx2_constants.x1d[0])); asm volatile("vpxor %ymm3,%ymm3,%ymm3"); /* Zero temp */ for (d = 0; d < bytes; d += 32) { asm volatile("prefetchnta %0" : : "m" (dptr[z0][d])); asm volatile("vmovdqa %0,%%ymm2" : : "m" (dptr[z0][d]));/* P[0] */ asm volatile("prefetchnta %0" : : "m" (dptr[z0-1][d])); asm volatile("vmovdqa %ymm2,%ymm4");/* Q[0] */ asm volatile("vmovdqa %0,%%ymm6" : : "m" (dptr[z0-1][d])); for (z = z0-2; z >= 0; z--) { asm volatile("prefetchnta %0" : : "m" (dptr[z][d])); asm volatile("vpcmpgtb %ymm4,%ymm3,%ymm5"); asm volatile("vpaddb %ymm4,%ymm4,%ymm4"); asm volatile("vpand %ymm0,%ymm5,%ymm5"); asm volatile("vpxor %ymm5,%ymm4,%ymm4"); asm volatile("vpxor %ymm6,%ymm2,%ymm2"); asm volatile("vpxor %ymm6,%ymm4,%ymm4"); asm volatile("vmovdqa %0,%%ymm6" : : "m" (dptr[z][d])); } asm volatile("vpcmpgtb %ymm4,%ymm3,%ymm5"); asm volatile("vpaddb %ymm4,%ymm4,%ymm4"); asm volatile("vpand %ymm0,%ymm5,%ymm5"); asm volatile("vpxor %ymm5,%ymm4,%ymm4"); asm volatile("vpxor %ymm6,%ymm2,%ymm2"); asm volatile("vpxor %ymm6,%ymm4,%ymm4"); asm volatile("vmovntdq %%ymm2,%0" : "=m" (p[d])); asm volatile("vpxor %ymm2,%ymm2,%ymm2"); asm volatile("vmovntdq %%ymm4,%0" : "=m" (q[d])); asm volatile("vpxor %ymm4,%ymm4,%ymm4"); } asm volatile("sfence" : : : "memory"); } static char *data[DISKS]; int main(void) { int i; for (i = 0; i < DISKS; i++) if ((errno = posix_memalign((void **)&data[i], PAGESIZE, PAGESIZE))) { err(EXIT_FAILURE, "posix_memalign() failed"); } raid6_avx21_gen_syndrome(DISKS, PAGESIZE, (void **)data); exit(EXIT_SUCCESS); } ``` ``` $ cc -O2 -o test test.c ``` It succeeded on the host and failed with "Illegal Instruction" on the guest. There is avx2 flag on /proc/cpuinfo of both the host and the guest. Here is the result of disassemble of both the kernel code and the above mentioned user program. kernel: ``` ffffffff8159a7b0 <raid6_avx21_gen_syndrome>: ffffffff8159a7b0: 8d 47 fd lea -0x3(%rdi),%eax ffffffff8159a7b3: 55 push %rbp ffffffff8159a7b4: 48 98 cltq ffffffff8159a7b6: 48 89 e5 mov %rsp,%rbp ffffffff8159a7b9: 41 57 push %r15 ffffffff8159a7bb: 48 83 c0 01 add $0x1,%rax ffffffff8159a7bf: 41 56 push %r14 ffffffff8159a7c1: 41 55 push %r13 ffffffff8159a7c3: 41 54 push %r12 ffffffff8159a7c5: 53 push %rbx ffffffff8159a7c6: 48 89 d3 mov %rdx,%rbx ffffffff8159a7c9: 48 8d 14 c5 00 00 00 lea 0x0(,%rax,8),%rdx ffffffff8159a7d0: 00 ffffffff8159a7d1: 41 89 ff mov %edi,%r15d ffffffff8159a7d4: 49 89 f4 mov %rsi,%r12 ffffffff8159a7d7: 48 83 ec 08 sub $0x8,%rsp ffffffff8159a7db: 4c 8b 2c c3 mov (%rbx,%rax,8),%r13 ffffffff8159a7df: 4c 8b 74 13 08 mov 0x8(%rbx,%rdx,1),%r14 ffffffff8159a7e4: 48 89 55 d0 mov %rdx,-0x30(%rbp) ffffffff8159a7e8: e8 53 ed a9 ff callq ffffffff81039540 <kernel_fpu_begin> ffffffff8159a7ed: c5 fd 6f 05 2b 2d 4e vmovdqa 0x4e2d2b(%rip),%ymm0 # ffffffff81a7d520 <raid6_avx2_constants> ffffffff8159a7f4: 00 ffffffff8159a7f5: c5 e5 ef db vpxor %ymm3,%ymm3,%ymm3 ffffffff8159a7f9: 4d 85 e4 test %r12,%r12 ffffffff8159a7fc: 48 8b 55 d0 mov -0x30(%rbp),%rdx ffffffff8159a800: 0f 84 a7 00 00 00 je ffffffff8159a8ad <raid6_avx21_gen_syndrome+0xfd> ffffffff8159a806: 45 8d 47 fb lea -0x5(%r15),%r8d ffffffff8159a80a: 4c 8d 4c 13 f8 lea -0x8(%rbx,%rdx,1),%r9 ffffffff8159a80f: 48 8d 74 13 f0 lea -0x10(%rbx,%rdx,1),%rsi ffffffff8159a814: 31 ff xor %edi,%edi ffffffff8159a816: 31 d2 xor %edx,%edx ffffffff8159a818: 48 89 f8 mov %rdi,%rax ffffffff8159a81b: 49 03 01 add (%r9),%rax ffffffff8159a81e: 0f 18 00 prefetchnta (%rax) ffffffff8159a821: c5 fd 6f 10 vmovdqa (%rax),%ymm2 ffffffff8159a825: 48 89 f8 mov %rdi,%rax ffffffff8159a828: 48 03 06 add (%rsi),%rax ffffffff8159a82b: 0f 18 00 prefetchnta (%rax) ffffffff8159a82e: c5 fd 6f e2 vmovdqa %ymm2,%ymm4 ffffffff8159a832: c5 fd 6f 30 vmovdqa (%rax),%ymm6 ffffffff8159a836: 45 85 c0 test %r8d,%r8d ffffffff8159a839: 78 36 js ffffffff8159a871 <raid6_avx21_gen_syndrome+0xc1> ffffffff8159a83b: 44 89 c0 mov %r8d,%eax ffffffff8159a83e: 48 63 c8 movslq %eax,%rcx ffffffff8159a841: 49 89 fa mov %rdi,%r10 ffffffff8159a844: 4c 03 14 cb add (%rbx,%rcx,8),%r10 ffffffff8159a848: 41 0f 18 02 prefetchnta (%r10) ffffffff8159a84c: c5 e5 64 ec vpcmpgtb %ymm4,%ymm3,%ymm5 ffffffff8159a850: c5 dd fc e4 vpaddb %ymm4,%ymm4,%ymm4 ffffffff8159a854: c5 d5 db e8 vpand %ymm0,%ymm5,%ymm5 ffffffff8159a858: c5 dd ef e5 vpxor %ymm5,%ymm4,%ymm4 ffffffff8159a85c: c5 ed ef d6 vpxor %ymm6,%ymm2,%ymm2 ffffffff8159a860: c5 dd ef e6 vpxor %ymm6,%ymm4,%ymm4 ffffffff8159a864: c4 c1 7d 6f 32 vmovdqa (%r10),%ymm6 ffffffff8159a869: 83 e8 01 sub $0x1,%eax ffffffff8159a86c: 83 f8 ff cmp $0xffffffff,%eax ffffffff8159a86f: 75 cd jne ffffffff8159a83e <raid6_avx21_gen_syndrome+0x8e> ffffffff8159a871: c5 e5 64 ec vpcmpgtb %ymm4,%ymm3,%ymm5 ffffffff8159a875: c5 dd fc e4 vpaddb %ymm4,%ymm4,%ymm4 ffffffff8159a879: c5 d5 db e8 vpand %ymm0,%ymm5,%ymm5 ffffffff8159a87d: c5 dd ef e5 vpxor %ymm5,%ymm4,%ymm4 ffffffff8159a881: c5 ed ef d6 vpxor %ymm6,%ymm2,%ymm2 ffffffff8159a885: c5 dd ef e6 vpxor %ymm6,%ymm4,%ymm4 ffffffff8159a889: c4 c1 7d e7 54 3d 00 vmovntdq %ymm2,0x0(%r13,%rdi,1) ffffffff8159a890: c5 ed ef d2 vpxor %ymm2,%ymm2,%ymm2 ffffffff8159a894: c4 c1 7d e7 24 3e vmovntdq %ymm4,(%r14,%rdi,1) ffffffff8159a89a: c5 dd ef e4 vpxor %ymm4,%ymm4,%ymm4 ffffffff8159a89e: 83 c2 20 add $0x20,%edx ffffffff8159a8a1: 48 63 fa movslq %edx,%rdi ffffffff8159a8a4: 4c 39 e7 cmp %r12,%rdi ffffffff8159a8a7: 0f 82 6b ff ff ff jb ffffffff8159a818 <raid6_avx21_gen_syndrome+0x68> ffffffff8159a8ad: 0f ae f8 sfence ffffffff8159a8b0: e8 ab f2 a9 ff callq ffffffff81039b60 <kernel_fpu_end> ffffffff8159a8b5: 48 83 c4 08 add $0x8,%rsp ffffffff8159a8b9: 5b pop %rbx ffffffff8159a8ba: 41 5c pop %r12 ffffffff8159a8bc: 41 5d pop %r13 ffffffff8159a8be: 41 5e pop %r14 ffffffff8159a8c0: 41 5f pop %r15 ffffffff8159a8c2: 5d pop %rbp ffffffff8159a8c3: c3 retq ffffffff8159a8c4: 66 90 xchg %ax,%ax ffffffff8159a8c6: 66 2e 0f 1f 84 00 00 nopw %cs:0x0(%rax,%rax,1) ffffffff8159a8cd: 00 00 00 ``` user: ``` ... 0000000000400510 <main>: 400510: 55 push %rbp 400511: 53 push %rbx 400512: bb 80 10 60 00 mov $0x601080,%ebx 400517: 48 83 ec 08 sub $0x8,%rsp 40051b: e8 90 ff ff ff callq 4004b0 <__errno_location@plt> 400520: 48 89 c5 mov %rax,%rbp 400523: ba 00 10 00 00 mov $0x1000,%edx 400528: be 00 10 00 00 mov $0x1000,%esi 40052d: 48 89 df mov %rbx,%rdi 400530: e8 bb ff ff ff callq 4004f0 <posix_memalign@plt> 400535: 85 c0 test %eax,%eax 400537: 74 17 je 400550 <main+0x40> 400539: 89 45 00 mov %eax,0x0(%rbp) 40053c: be 84 07 40 00 mov $0x400784,%esi 400541: bf 01 00 00 00 mov $0x1,%edi 400546: 31 c0 xor %eax,%eax 400548: e8 83 ff ff ff callq 4004d0 <err@plt> 40054d: 0f 1f 00 nopl (%rax) 400550: 48 83 c3 08 add $0x8,%rbx 400554: c7 45 00 00 00 00 00 movl $0x0,0x0(%rbp) 40055b: 48 81 fb a0 10 60 00 cmp $0x6010a0,%rbx 400562: 75 bf jne 400523 <main+0x13> 400564: 48 8b 35 25 0b 20 00 mov 0x200b25(%rip),%rsi # 601090 <data+0x10> 40056b: 48 8b 0d 26 0b 20 00 mov 0x200b26(%rip),%rcx # 601098 <data+0x18> 400572: c5 fd 6f 05 26 02 00 vmovdqa 0x226(%rip),%ymm0 # 4007a0 <raid6_avx2_constants> 400579: 00 40057a: c5 e5 ef db vpxor %ymm3,%ymm3,%ymm3 40057e: 31 c0 xor %eax,%eax 400580: 48 89 c2 mov %rax,%rdx 400583: 48 03 15 fe 0a 20 00 add 0x200afe(%rip),%rdx # 601088 <data+0x8> 40058a: 0f 18 02 prefetchnta (%rdx) 40058d: c5 fd 6f 12 vmovdqa (%rdx),%ymm2 400591: 48 89 c2 mov %rax,%rdx 400594: 48 03 15 e5 0a 20 00 add 0x200ae5(%rip),%rdx # 601080 <data> 40059b: 0f 18 02 prefetchnta (%rdx) 40059e: c5 fd 6f e2 vmovdqa %ymm2,%ymm4 4005a2: c5 fd 6f 32 vmovdqa (%rdx),%ymm6 4005a6: c5 e5 64 ec vpcmpgtb %ymm4,%ymm3,%ymm5 4005aa: c5 dd fc e4 vpaddb %ymm4,%ymm4,%ymm4 4005ae: c5 d5 db e8 vpand %ymm0,%ymm5,%ymm5 4005b2: c5 dd ef e5 vpxor %ymm5,%ymm4,%ymm4 4005b6: c5 ed ef d6 vpxor %ymm6,%ymm2,%ymm2 4005ba: c5 dd ef e6 vpxor %ymm6,%ymm4,%ymm4 4005be: c5 fd e7 14 06 vmovntdq %ymm2,(%rsi,%rax,1) 4005c3: c5 ed ef d2 vpxor %ymm2,%ymm2,%ymm2 4005c7: c5 fd e7 24 01 vmovntdq %ymm4,(%rcx,%rax,1) 4005cc: c5 dd ef e4 vpxor %ymm4,%ymm4,%ymm4 4005d0: 48 83 c0 20 add $0x20,%rax 4005d4: 48 3d 00 10 00 00 cmp $0x1000,%rax 4005da: 75 a4 jne 400580 <main+0x70> 4005dc: 0f ae f8 sfence 4005df: 31 ff xor %edi,%edi 4005e1: e8 fa fe ff ff callq 4004e0 <exit@plt> 4005e6: 66 2e 0f 1f 84 00 00 nopw %cs:0x0(%rax,%rax,1) 4005ed: 00 00 00 ... ``` Thanks, Satoru ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [BUG] x86: failed to boot a kernel on a Ryzen machine 2017-04-24 11:27 ` Satoru Takeuchi @ 2017-04-25 7:45 ` Jon Masters 0 siblings, 0 replies; 18+ messages in thread From: Jon Masters @ 2017-04-25 7:45 UTC (permalink / raw) To: Satoru Takeuchi, x86, linux-kernel, kvm On 04/24/2017 07:27 AM, Satoru Takeuchi wrote: > At Mon, 24 Apr 2017 15:58:05 +0900, > Satoru Takeuchi wrote: >> >> [1 <text/plain; US-ASCII (7bit)>] >> Recently I bought a new Ryzen machine. When I tried to test v4.11-rc8 on it, it failed to boot >> with the following panic log. Side note - have forwarded to the AMD Ryzen engineering team. Jon. ^ permalink raw reply [flat|nested] 18+ messages in thread
end of thread, other threads:[~2017-04-29 21:09 UTC | newest] Thread overview: 18+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2017-04-24 6:58 [BUG] x86: failed to boot a kernel on a Ryzen machine Satoru Takeuchi 2017-04-24 11:07 ` Borislav Petkov 2017-04-24 12:39 ` Satoru Takeuchi 2017-04-24 12:48 ` Borislav Petkov 2017-04-24 13:09 ` Satoru Takeuchi 2017-04-25 9:36 ` Borislav Petkov 2017-04-26 7:48 ` Paolo Bonzini 2017-04-26 8:14 ` Borislav Petkov 2017-04-26 11:47 ` Satoru Takeuchi 2017-04-26 16:58 ` Paolo Bonzini 2017-04-27 0:42 ` Satoru Takeuchi 2017-04-28 13:34 ` Paolo Bonzini 2017-04-29 21:08 ` Satoru Takeuchi 2017-04-25 14:58 ` Masami Hiramatsu 2017-04-26 11:56 ` Satoru Takeuchi 2017-04-26 12:51 ` Borislav Petkov 2017-04-24 11:27 ` Satoru Takeuchi 2017-04-25 7:45 ` Jon Masters
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).