[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date: Tue, 14 Nov 2023 00:43:38 +0000
From: "Li, Xin3" <xin3.li@...el.com>
To: Borislav Petkov <bp@...en8.de>
CC: "linux-doc@...r.kernel.org" <linux-doc@...r.kernel.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
"linux-edac@...r.kernel.org" <linux-edac@...r.kernel.org>,
"linux-hyperv@...r.kernel.org" <linux-hyperv@...r.kernel.org>,
"kvm@...r.kernel.org" <kvm@...r.kernel.org>,
"xen-devel@...ts.xenproject.org" <xen-devel@...ts.xenproject.org>,
"tglx@...utronix.de" <tglx@...utronix.de>,
"mingo@...hat.com" <mingo@...hat.com>,
"dave.hansen@...ux.intel.com" <dave.hansen@...ux.intel.com>,
"x86@...nel.org" <x86@...nel.org>, "hpa@...or.com" <hpa@...or.com>,
"Lutomirski, Andy" <luto@...nel.org>,
"pbonzini@...hat.com" <pbonzini@...hat.com>,
"Christopherson,, Sean" <seanjc@...gle.com>,
"peterz@...radead.org" <peterz@...radead.org>,
"Gross, Jurgen" <jgross@...e.com>,
"Shankar, Ravi V" <ravi.v.shankar@...el.com>,
"mhiramat@...nel.org" <mhiramat@...nel.org>,
"andrew.cooper3@...rix.com" <andrew.cooper3@...rix.com>,
"jiangshanlai@...il.com" <jiangshanlai@...il.com>,
"nik.borisov@...e.com" <nik.borisov@...e.com>
Subject: RE: [PATCH v12 01/37] x86/cpufeatures: Add the cpu feature bit for
WRMSRNS
> Then, further down in the patchset, it says:
>
> + if (cpu_feature_enabled(X86_FEATURE_FRED)) {
> + /* WRMSRNS is a baseline feature for FRED. */
>
> but WRMSRNS is not mentioned in the FRED spec "Document Number:
> 346446-005US, Revision: 5.0" which, according to
>
> https://www.intel.com/content/www/us/en/content-details/780121/flexible-
> return-and-event-delivery-fred-specification.html
>
> is the latest.
>
> Am I looking at the wrong one?
No. tglx asked for it:
https://lkml.kernel.org/kvm/87y1h81ht4.ffs@tglx/
>
> And now I'm wondering: when you're adding a separate CPUID bit, then the
> above should be
>
> + if (cpu_feature_enabled(X86_FEATURE_WRMSRNS)) {
> + /* WRMSRNS is a baseline feature for FRED. */
Because we are doing
wrmsrns(MSR_IA32_FRED_RSP0, ...)
here, and X86_FEATURE_WRMSRNS doesn't guarantee MSR_IA32_FRED_RSP0 exists.
Or I missed something?
>
> I see that you're adding a dependency:
>
> + { X86_FEATURE_FRED, X86_FEATURE_WRMSRNS },
>
> which then means you don't need the X86_FEATURE_WRMSRNS definition at all
> and can use X86_FEATURE_FRED only.
>
> So, what's up?
FRED just gets the honor to introduce WRMSRNS and its first usage:
https://lkml.kernel.org/kvm/b05e3092-8ba3-f4e1-b5a3-2125944936fd@zytor.com/
Another patch set should replace WRMSR with WRMSRNS, with SERIALIZE added
when needed.
Sorry for the late response, it was a long weekend in the US.
Thanks!
Xin
Powered by blists - more mailing lists