fhandler_proc.cc(format_proc_cpuinfo): add Linux 5.18 cpuinfo flags

0x80000008:0 EBX:31 brs		AMD Branch Sampling available
0x80000022:0 EAX:0  perfmon_v2	AMD ExtPerfMonAndDbg Performance Monitoring Version 2
0x00000021:0 EBX|EDX|ECX=="IntelTDX    " tdx_guest Intel Trust Domain Extensions- Guest Support
This commit is contained in:
Brian Inglis 2022-05-25 06:30:45 -06:00 committed by Ken Brown
parent 2f8ba40046
commit 9af21ada23
1 changed files with 20 additions and 2 deletions

View File

@ -1362,14 +1362,21 @@ format_proc_cpuinfo (void *, char *&destbuf)
if (maxe >= 0x80000008)
{
/* cpuid (&unused, &features1, &unused, &unused, 0x80000008, 0); */
/* from above */
/* from above ^ */
ftcprint (features1, 6, "mba"); /* memory bandwidth alloc */
}
/* cpuid 0x80000022 ebx AMD ExtPerfMonAndDbg */
if (maxe >= 0x80000022)
{
cpuid (&features2, &unused, &unused, &unused, 0x80000022);
ftcprint (features2, 0, "perfmon_v2"); /* Performance Monitoring Version 2 */
}
/* cpuid 0x80000008 ebx */
if (maxe >= 0x80000008)
{
/* cpuid (&unused, &features1, &unused, &unused, 0x80000008, 0); */
/* from above */
/* from above ^ */
/* ftcprint (features1, 0, "clzero"); *//* clzero instruction */
/* ftcprint (features1, 1, "irperf"); *//* instr retired count */
/* ftcprint (features1, 2, "xsaveerptr");*//* save/rest FP err ptrs */
@ -1388,6 +1395,16 @@ format_proc_cpuinfo (void *, char *&destbuf)
/* ftcprint (features1, 26, "ssb_no"); *//* ssb fixed in hardware */
}
/* cpuid 0x00000021 ebx|edx|ecx == "IntelTDX " */
if (is_intel && maxf >= 0x00000021)
{
uint32_t tdx[3];
cpuid (&unused, &tdx[0], &tdx[2], &tdx[1], 0x00000021, 0);
if (!memcmp ("IntelTDX ", tdx, sizeof (tdx)))
ftuprint ("tdx_guest"); /* Intel Trust Domain Extensions Guest Support */
}
/* cpuid 0x00000007 ebx */
if (maxf >= 0x00000007)
{
@ -1485,6 +1502,7 @@ format_proc_cpuinfo (void *, char *&destbuf)
ftcprint (features1, 25, "virt_ssbd"); /* vir spec store byp dis */
/* ftcprint (features1, 26, "ssb_no"); */ /* ssb fixed in hardware */
ftcprint (features1, 27, "cppc"); /* collab proc perf ctl */
ftcprint (features1, 31, "brs"); /* branch sampling */
}
/* thermal & power cpuid 0x00000006 eax */