2017-04-24 06:58:27

by Satoru Takeuchi

[permalink] [raw]
Subject: [BUG] x86: failed to boot a kernel on a Ryzen machine

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


Attachments:
dot_config.xz (24.23 kB)

2017-04-24 11:08:27

by Borislav Petkov

[permalink] [raw]
Subject: Re: [BUG] x86: failed to boot a kernel on a Ryzen machine

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.

2017-04-24 11:27:28

by Satoru Takeuchi

[permalink] [raw]
Subject: Re: [BUG] x86: failed to boot a kernel on a Ryzen machine

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 "[email protected]" 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

2017-04-24 12:39:37

by Satoru Takeuchi

[permalink] [raw]
Subject: Re: [BUG] x86: failed to boot a kernel on a Ryzen machine

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.

2017-04-24 12:48:58

by Borislav Petkov

[permalink] [raw]
Subject: Re: [BUG] x86: failed to boot a kernel on a Ryzen machine

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.

2017-04-24 13:09:24

by Satoru Takeuchi

[permalink] [raw]
Subject: Re: [BUG] x86: failed to boot a kernel on a Ryzen machine

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.

2017-04-25 07:45:09

by Jon Masters

[permalink] [raw]
Subject: Re: [BUG] x86: failed to boot a kernel on a Ryzen machine

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.


2017-04-25 09:37:03

by Borislav Petkov

[permalink] [raw]
Subject: Re: [BUG] x86: failed to boot a kernel on a Ryzen machine

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.

2017-04-25 14:59:10

by Masami Hiramatsu

[permalink] [raw]
Subject: Re: [BUG] x86: failed to boot a kernel on a Ryzen machine

Hello,

2017-04-24 22:09 GMT+09:00 Satoru Takeuchi <[email protected]>:
> 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 <[email protected]>

2017-04-26 07:48:48

by Paolo Bonzini

[permalink] [raw]
Subject: Re: [BUG] x86: failed to boot a kernel on a Ryzen machine



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

2017-04-26 08:15:26

by Borislav Petkov

[permalink] [raw]
Subject: Re: [BUG] x86: failed to boot a kernel on a Ryzen machine

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.

2017-04-26 11:47:57

by Satoru Takeuchi

[permalink] [raw]
Subject: Re: [BUG] x86: failed to boot a kernel on a Ryzen machine

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

2017-04-26 11:56:45

by Satoru Takeuchi

[permalink] [raw]
Subject: Re: [BUG] x86: failed to boot a kernel on a Ryzen machine

At Tue, 25 Apr 2017 23:58:50 +0900,
Masami Hiramatsu wrote:
>
> Hello,
>
> 2017-04-24 22:09 GMT+09:00 Satoru Takeuchi <[email protected]>:
> > 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 <[email protected]>

2017-04-26 12:52:16

by Borislav Petkov

[permalink] [raw]
Subject: Re: [BUG] x86: failed to boot a kernel on a Ryzen machine

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.

2017-04-26 16:58:45

by Paolo Bonzini

[permalink] [raw]
Subject: Re: [BUG] x86: failed to boot a kernel on a Ryzen machine



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

2017-04-27 00:42:58

by Satoru Takeuchi

[permalink] [raw]
Subject: Re: [BUG] x86: failed to boot a kernel on a Ryzen machine

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

2017-04-28 13:36:09

by Paolo Bonzini

[permalink] [raw]
Subject: Re: [BUG] x86: failed to boot a kernel on a Ryzen machine



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

2017-04-29 21:09:07

by Satoru Takeuchi

[permalink] [raw]
Subject: Re: [BUG] x86: failed to boot a kernel on a Ryzen machine

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