> -----Original Message----- > From: Eduardo Habkost [mailto:ehabkost@xxxxxxxxxx] > Sent: Wednesday, June 13, 2018 9:22 PM > To: Moger, Babu <Babu.Moger@xxxxxxx> > Cc: mst@xxxxxxxxxx; marcel.apfelbaum@xxxxxxxxx; pbonzini@xxxxxxxxxx; > rth@xxxxxxxxxxx; mtosatti@xxxxxxxxxx; qemu-devel@xxxxxxxxxx; > kvm@xxxxxxxxxxxxxxx; kash@xxxxxxxxxxxxxx; geoff@xxxxxxxxxxxxxxx > Subject: Re: [PATCH v14 1/6] i386: Set TOPOEXT unconditionally for > comapatibility > > On Wed, Jun 13, 2018 at 09:18:22PM -0400, Babu Moger wrote: > > Enabling TOPOEXT feature might cause compatibility issues if > > older kernels does not set this feature. Lets set this feature > > unconditionally. > > > > Signed-off-by: Babu Moger <babu.moger@xxxxxxx> > > --- > > target/i386/kvm.c | 6 ++++++ > > 1 file changed, 6 insertions(+) > > > > diff --git a/target/i386/kvm.c b/target/i386/kvm.c > > index 445e0e0..6f2cca7 100644 > > --- a/target/i386/kvm.c > > +++ b/target/i386/kvm.c > > @@ -372,6 +372,12 @@ uint32_t > kvm_arch_get_supported_cpuid(KVMState *s, uint32_t function, > > if (host_tsx_blacklisted()) { > > ret &= ~(CPUID_7_0_EBX_RTM | CPUID_7_0_EBX_HLE); > > } > > + } else if (function == 0x80000001 && reg == R_ECX) { > > + /* Enabling topoext feature might cause compatibility issues if > > + * older kernel does not set this feature. Lets set this feature > > + * unconditionally. > > + */ > > Thanks. I will apply and rewrite the comment as: Sure. Thanks > > /* > * It's safe to enable TOPOEXT even if it's not returned > * by GET_SUPPORTED_CPUID. Unconditionally enabling > * TOPOEXT here let us keep CPU models runnable on > * older kernels even when TOPOEXT is enabled. > */ > > > + ret |= CPUID_EXT3_TOPOEXT; > > } else if (function == 0x80000001 && reg == R_EDX) { > > /* On Intel, kvm returns cpuid according to the Intel spec, > > * so add missing bits according to the AMD spec: > > -- > > 1.8.3.1 > > > > -- > Eduardo