qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Tao Su <tao1.su@linux.intel.com>
To: Igor Mammedov <imammedo@redhat.com>
Cc: qemu-devel@nongnu.org, pbonzini@redhat.com, xiaoyao.li@intel.com,
	lei4.wang@intel.com, qian.wen@intel.com
Subject: Re: [PATCH 1/7] target/i386: Add FEAT_7_1_EDX to adjust feature level
Date: Tue, 27 Jun 2023 12:27:19 +0800	[thread overview]
Message-ID: <ZJplJ+feTMppRWt3@linux.bj.intel.com> (raw)
In-Reply-To: <20230626143915.34d5712b@imammedo.users.ipa.redhat.com>

On Mon, Jun 26, 2023 at 02:39:15PM +0200, Igor Mammedov wrote:
> On Fri, 16 Jun 2023 11:23:05 +0800
> Tao Su <tao1.su@linux.intel.com> wrote:
> 
> > Considering the case of FEAT_7_1_EAX being 0 and FEAT_7_1_EDX being
> > non-zero,
> Can you clarify when/why that happens?

When start a VM on GraniteRapids using '-cpu host', we can see two leafs CPUID_7_0
and CPUID_7_1 in VM, because both CPUID_7_1_EAX and CPUID_7_1_EDX have non-zero value:
0x00000007 0x01: eax=0x00201c30 edx=0x00004000

But if we minus all FEAT_7_1_EAX features using
'-cpu host,-avx-vnni,-avx512-bf16,-fzrm,-fsrs,-fsrc,-amx-fp16', we can't get CPUID_7_1
leaf even though CPUID_7_1_EDX has non-zero value, so it is necessary to update
cpuid_level_func7 by CPUID_7_1_EDX.

Thanks,
Tao

> 
> > guest may report wrong maximum number sub-leaves in leaf
> > 07H. So add FEAT_7_1_EDX to adjust feature level.
> > 
> > Fixes: eaaa197d5b11 ("target/i386: Add support for AVX-VNNI-INT8 in CPUID
> > enumeration")
> > 
> > Signed-off-by: Tao Su <tao1.su@linux.intel.com>
> > Reviewed-by: Xiaoyao Li <xiaoyao.li@intel.com>
> > ---
> >  target/i386/cpu.c | 1 +
> >  1 file changed, 1 insertion(+)
> > 
> > diff --git a/target/i386/cpu.c b/target/i386/cpu.c
> > index 1242bd541a..e8a70c35d2 100644
> > --- a/target/i386/cpu.c
> > +++ b/target/i386/cpu.c
> > @@ -6778,6 +6778,7 @@ void x86_cpu_expand_features(X86CPU *cpu, Error **errp)
> >          x86_cpu_adjust_feat_level(cpu, FEAT_6_EAX);
> >          x86_cpu_adjust_feat_level(cpu, FEAT_7_0_ECX);
> >          x86_cpu_adjust_feat_level(cpu, FEAT_7_1_EAX);
> > +        x86_cpu_adjust_feat_level(cpu, FEAT_7_1_EDX);
> >          x86_cpu_adjust_feat_level(cpu, FEAT_8000_0001_EDX);
> >          x86_cpu_adjust_feat_level(cpu, FEAT_8000_0001_ECX);
> >          x86_cpu_adjust_feat_level(cpu, FEAT_8000_0007_EDX);
> 
> 


  reply	other threads:[~2023-06-27  4:30 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-06-16  3:23 [PATCH 0/7] Add new CPU model EmeraldRapids and GraniteRapids Tao Su
2023-06-16  3:23 ` [PATCH 1/7] target/i386: Add FEAT_7_1_EDX to adjust feature level Tao Su
2023-06-26 12:39   ` Igor Mammedov
2023-06-27  4:27     ` Tao Su [this message]
2023-06-27  8:28       ` Igor Mammedov
2023-06-16  3:23 ` [PATCH 2/7] target/i386: Add support for MCDT_NO in CPUID enumeration Tao Su
2023-06-16  3:23 ` [PATCH 3/7] target/i386: Allow MCDT_NO if host supports Tao Su
2023-06-26 13:03   ` Igor Mammedov
2023-06-27  4:31     ` Tao Su
2023-06-16  3:23 ` [PATCH 4/7] target/i386: Add new bit definitions of MSR_IA32_ARCH_CAPABILITIES Tao Su
2023-06-26 13:12   ` Igor Mammedov
2023-06-16  3:23 ` [PATCH 5/7] target/i386: Add few security fix bits in ARCH_CAPABILITIES into SapphireRapids CPU model Tao Su
2023-06-26 13:15   ` Igor Mammedov
2023-06-27  6:10     ` Xiaoyao Li
2023-06-27  8:29       ` Igor Mammedov
2023-06-16  3:23 ` [PATCH 6/7] target/i386: Add new CPU model EmeraldRapids Tao Su
2023-06-26 12:56   ` Igor Mammedov
2023-06-27  5:54     ` Xiaoyao Li
2023-06-27  8:49       ` Igor Mammedov
2023-06-27 11:25         ` Xiaoyao Li
2023-06-27 11:34           ` Daniel P. Berrangé
2023-06-16  3:23 ` [PATCH 7/7] target/i386: Add new CPU model GraniteRapids Tao Su
2023-06-27 11:55   ` Igor Mammedov
2023-06-28  6:11     ` Tao Su
2023-06-16  4:01 ` [PATCH 0/7] Add new CPU model EmeraldRapids and GraniteRapids Wang, Lei
2023-06-16  4:22   ` Tao Su

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=ZJplJ+feTMppRWt3@linux.bj.intel.com \
    --to=tao1.su@linux.intel.com \
    --cc=imammedo@redhat.com \
    --cc=lei4.wang@intel.com \
    --cc=pbonzini@redhat.com \
    --cc=qemu-devel@nongnu.org \
    --cc=qian.wen@intel.com \
    --cc=xiaoyao.li@intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).