[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-changelog] [xen staging] tools: re-sync CPUID leaf 7 tables



commit 787619a0640ed79650305fc21f70d48e0726e7c7
Author:     Jan Beulich <jbeulich@xxxxxxxx>
AuthorDate: Thu Mar 14 16:38:39 2019 +0100
Commit:     Jan Beulich <jbeulich@xxxxxxxx>
CommitDate: Thu Mar 14 16:38:39 2019 +0100

    tools: re-sync CPUID leaf 7 tables
    
    Bring libxl's in line with the public header, and update xen-cpuid's to
    the latest information available in Intel's documentation (SDM ver 068
    and ISA extensions ver 035), with (as before) the exception on MAWAU.
    
    Some pre-existing strings get changed to match SDM naming. This should
    be benign in xen-cpuid, and I hope it's also acceptable in libxl, where
    people actually using the slightly wrong names would have to update
    their guest config files.
    
    Signed-off-by: Jan Beulich <jbeulich@xxxxxxxx>
    Acked-by: Andrew Cooper <andrew.cooper3@xxxxxxxxxx>
---
 tools/libxl/libxl_cpuid.c | 13 +++++++++++--
 tools/misc/xen-cpuid.c    | 22 ++++++++++++++++------
 2 files changed, 27 insertions(+), 8 deletions(-)

diff --git a/tools/libxl/libxl_cpuid.c b/tools/libxl/libxl_cpuid.c
index 52e16c20ed..66c3f05b9d 100644
--- a/tools/libxl/libxl_cpuid.c
+++ b/tools/libxl/libxl_cpuid.c
@@ -185,7 +185,7 @@ int libxl_cpuid_parse_config(libxl_cpuid_policy_list 
*cpuid, const char* str)
         {"rdseed",       0x00000007,  0, CPUID_REG_EBX, 18,  1},
         {"adx",          0x00000007,  0, CPUID_REG_EBX, 19,  1},
         {"smap",         0x00000007,  0, CPUID_REG_EBX, 20,  1},
-        {"avx512ifma",   0x00000007,  0, CPUID_REG_EBX, 21,  1},
+        {"avx512-ifma",  0x00000007,  0, CPUID_REG_EBX, 21,  1},
         {"clflushopt",   0x00000007,  0, CPUID_REG_EBX, 23,  1},
         {"clwb",         0x00000007,  0, CPUID_REG_EBX, 24,  1},
         {"avx512pf",     0x00000007,  0, CPUID_REG_EBX, 26,  1},
@@ -195,10 +195,19 @@ int libxl_cpuid_parse_config(libxl_cpuid_policy_list 
*cpuid, const char* str)
         {"avx512bw",     0x00000007,  0, CPUID_REG_EBX, 30,  1},
         {"avx512vl",     0x00000007,  0, CPUID_REG_EBX, 31,  1},
 
-        {"avx512vbmi",   0x00000007,  0, CPUID_REG_ECX,  1,  1},
+        {"prefetchwt1",  0x00000007,  0, CPUID_REG_ECX,  0,  1},
+        {"avx512-vbmi",  0x00000007,  0, CPUID_REG_ECX,  1,  1},
         {"umip",         0x00000007,  0, CPUID_REG_ECX,  2,  1},
         {"pku",          0x00000007,  0, CPUID_REG_ECX,  3,  1},
         {"ospke",        0x00000007,  0, CPUID_REG_ECX,  4,  1},
+        {"avx512-vbmi2", 0x00000007,  0, CPUID_REG_ECX,  6,  1},
+        {"gfni",         0x00000007,  0, CPUID_REG_ECX,  8,  1},
+        {"vaes",         0x00000007,  0, CPUID_REG_ECX,  9,  1},
+        {"vpclmulqdq",   0x00000007,  0, CPUID_REG_ECX, 10,  1},
+        {"avx512-vnni",  0x00000007,  0, CPUID_REG_ECX, 11,  1},
+        {"avx512-bitalg",0x00000007,  0, CPUID_REG_ECX, 12,  1},
+        {"avx512-vpopcntdq",0x00000007,0,CPUID_REG_ECX, 14,  1},
+        {"rdpid",        0x00000007,  0, CPUID_REG_ECX, 22,  1},
 
         {"avx512-4vnniw",0x00000007,  0, CPUID_REG_EDX,  2,  1},
         {"avx512-4fmaps",0x00000007,  0, CPUID_REG_EDX,  3,  1},
diff --git a/tools/misc/xen-cpuid.c b/tools/misc/xen-cpuid.c
index d87a72e3e6..f82d9571a7 100644
--- a/tools/misc/xen-cpuid.c
+++ b/tools/misc/xen-cpuid.c
@@ -104,8 +104,8 @@ static const char *str_7b0[32] =
     [14] = "mpx",      [15] = "pqe",
     [16] = "avx512f",  [17] = "avx512dq",
     [18] = "rdseed",   [19] = "adx",
-    [20] = "smap",     [21] = "avx512ifma",
-    [22] = "pcomit",   [23] = "clflushopt",
+    [20] = "smap",     [21] = "avx512-ifma",
+    [22] = "pcommit",  [23] = "clflushopt",
     [24] = "clwb",     [25] = "pt",
     [26] = "avx512pf", [27] = "avx512er",
     [28] = "avx512cd", [29] = "sha",
@@ -120,13 +120,20 @@ static const char *str_Da1[32] =
 
 static const char *str_7c0[32] =
 {
-    [ 0] = "prechwt1", [ 1] = "avx512vbmi",
-    [ 2] = "umip",     [ 3] = "pku",
-    [ 4] = "ospke",
-
+    [ 0] = "prefetchwt1",      [ 1] = "avx512_vbmi",
+    [ 2] = "umip",             [ 3] = "pku",
+    [ 4] = "ospke",            [ 5] = "waitpkg",
+    [ 6] = "avx512_vbmi2",
+    [ 8] = "gfni",             [ 9] = "vaes",
+    [10] = "vpclmulqdq",       [11] = "avx512_vnni",
+    [12] = "avx512_bitalg",
     [14] = "avx512_vpopcntdq",
 
     [22] = "rdpid",
+    /* 24 */                   [25] = "cldemote",
+    /* 26 */                   [27] = "movdiri",
+    [28] = "movdir64b",
+    [30] = "sgx_lc",
 };
 
 static const char *str_e7d[32] =
@@ -145,9 +152,12 @@ static const char *str_e8b[32] =
 static const char *str_7d0[32] =
 {
     [ 2] = "avx512_4vnniw", [ 3] = "avx512_4fmaps",
+    [ 4] = "fsrm",
 
     /* 12 */                [13] = "tsx-force-abort",
 
+    [18] = "pconfig",
+
     [26] = "ibrsb",         [27] = "stibp",
     [28] = "l1d_flush",     [29] = "arch_caps",
     /* 30 */                [31] = "ssbd",
--
generated by git-patchbot for /home/xen/git/xen.git#staging

_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxxx
https://lists.xenproject.org/xen-changelog

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.