On Thu, Jul 18, 2019 at 04:45:37PM +0300, Denis V. Lunev wrote: > There are the following flags available in libvirt inside cpu_map.xm > <feature name='cvt16'> > <cpuid function='0x80000001' ecx='0x00040000'/>
This is bit 18... > </feature> > <feature name='cmt'> <!-- cqm --> > <cpuid eax_in='0x07' ecx_in='0x00' ebx='0x00001000'/> > </feature> > We have faced the problem that QEMU does not start once these flags are > present in the domain.xml. > > This patch just adds proper names into the map. > > Signed-off-by: Denis V. Lunev <d...@openvz.org> > CC: Paolo Bonzini <pbonz...@redhat.com> > CC: Richard Henderson <r...@twiddle.net> > CC: Eduardo Habkost <ehabk...@redhat.com> > CC: Nikolay Shirokovskiy <nshirokovs...@virtuozzo.com> > CC: Peter Krempa <pkre...@redhat.com> > CC: Daniel P. Berrangé <berra...@redhat.com> > --- > target/i386/cpu.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/target/i386/cpu.c b/target/i386/cpu.c > index 805ce95247..88ba4dad47 100644 > --- a/target/i386/cpu.c > +++ b/target/i386/cpu.c > @@ -870,7 +870,7 @@ static FeatureWordInfo feature_word_info[FEATURE_WORDS] = > { > "lahf-lm", "cmp-legacy", "svm", "extapic", > "cr8legacy", "abm", "sse4a", "misalignsse", > "3dnowprefetch", "osvw", "ibs", "xop", > - "skinit", "wdt", NULL, "lwp", > + "skinit", "wdt", "cvt16", "lwp", ...this is bit 14. Anyway, the cvt16 bit was removed on purpose, and was never supported. See: http://mid.mail-archive.com/508091FB.1030705@amd.com > "fma4", "tce", NULL, "nodeid-msr", > NULL, "tbm", "topoext", "perfctr-core", > "perfctr-nb", NULL, NULL, NULL, > @@ -1044,7 +1044,7 @@ static FeatureWordInfo feature_word_info[FEATURE_WORDS] > = { > "fsgsbase", "tsc-adjust", NULL, "bmi1", > "hle", "avx2", NULL, "smep", > "bmi2", "erms", "invpcid", "rtm", > - NULL, NULL, "mpx", NULL, > + "cmt", NULL, "mpx", NULL, This is one is named "cqm" on Linux (X86_FEATURE_CQM). I prefer to keep consistency with the name already in use by Linux than the one in libvirt that was never used. You can still add a "cmt" alias property if you think it would be useful. Also, I see no code implementing migration of MSR_IA32_QM_EVTSEL, MSR_IA32_QM_CTR, or other RDT-M state. If the feature is not safe for migration yet, you need to explicitly add the feature to .unmigratable_flags. > "avx512f", "avx512dq", "rdseed", "adx", > "smap", "avx512ifma", "pcommit", "clflushopt", > "clwb", "intel-pt", "avx512pf", "avx512er", > -- > 2.17.1 > -- Eduardo