qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [PATCH v2 9/9] i386: Add Cascadelake-Server-v2 CPU mode


From: Eduardo Habkost
Subject: Re: [Qemu-devel] [PATCH v2 9/9] i386: Add Cascadelake-Server-v2 CPU model
Date: Mon, 1 Jul 2019 17:38:39 -0300

On Mon, Jul 01, 2019 at 03:23:31PM +0800, Xiaoyao Li wrote:
> On 6/28/2019 8:28 AM, Eduardo Habkost wrote:
> > Add new version of Cascadelake-Server CPU model, setting
> > stepping=5 and enabling the IA32_ARCH_CAPABILITIES MSR
> > with some flags.
> > 
> > The new feature will introduce a new host software requirement,
> > breaking our CPU model runnability promises.  This means we can't
> > enable the new CPU model version by default in QEMU 4.1, because
> > management software isn't ready yet to resolve CPU model aliases.
> > This is why "pc-*-4.1" will keep returning Cascadelake-Server-v1
> > if "-cpu Cascadelake-Server" is specified.
> > 
> > Includes a test case to ensure the right combinations of
> > machine-type + CPU model + command-line feature flags will work
> > as expected.
> > 
> > Signed-off-by: Eduardo Habkost <address@hidden>
> > ---
> > Changes v1 -> v2:
> > * Enable rdctl-no, ibrs-all, skip-l1dfl-vmentry
> >    (Suggested by Tao Xu)
> > 
> > Cc: "Hu, Robert" <address@hidden>
> > Cc: Tao Xu <address@hidden>
> > Cc: address@hidden,
> > Cc: "Lai, Paul C" <address@hidden>
> > ---
> >   target/i386/cpu.c                          | 14 +++++
> >   tests/acceptance/x86_cpu_model_versions.py | 73 ++++++++++++++++++++++
> >   2 files changed, 87 insertions(+)
> > 
> > diff --git a/target/i386/cpu.c b/target/i386/cpu.c
> > index 10a09c971a..570890a7dd 100644
> > --- a/target/i386/cpu.c
> > +++ b/target/i386/cpu.c
> > @@ -2343,6 +2343,20 @@ static X86CPUDefinition builtin_x86_defs[] = {
> >               CPUID_6_EAX_ARAT,
> >           .xlevel = 0x80000008,
> >           .model_id = "Intel Xeon Processor (Cascadelake)",
> > +        .versions = (X86CPUVersionDefinition[]) {
> > +            { .version = 1 },
> > +            { .version = 2,
> > +              .props = (PropValue[]) {
> > +                  { "stepping", "5" },
> 
> Stepping should be 6?

Yes, my mistake.

> 
> > +                  { "arch-capabilities", "on" },
> > +                  { "rdctl-no", "on" },
> > +                  { "ibrs-all", "on" },
> > +                  { "skip-l1dfl-vmentry", "on" },
> 
> rdmsr 0x10AH returns 0x2b from host Cascadelake, we'd better add feature
> "mds-no" too. Otherwise we will need another version for that feature.

Thanks for the info, I will update it in the next version.

> [...]

-- 
Eduardo



reply via email to

[Prev in Thread] Current Thread [Next in Thread]