On September 20, 2023 1:18:14 AM PDT, Thomas Gleixner <t...@linutronix.de> 
wrote:
>On Wed, Sep 20 2023 at 04:33, Li, Xin3 wrote:
>>> > +static inline void fred_syscall_init(void) {
>>> > + /*
>>> > +  * Per FRED spec 5.0, FRED uses the ring 3 FRED entrypoint for SYSCALL
>>> > +  * and SYSENTER, and ERETU is the only legit instruction to return to
>>> > +  * ring 3, as a result there is _no_ need to setup the SYSCALL and
>>> > +  * SYSENTER MSRs.
>>> > +  *
>>> > +  * Note, both sysexit and sysret cause #UD when FRED is enabled.
>>> > +  */
>>> > + wrmsrl(MSR_LSTAR, 0ULL);
>>> > + wrmsrl_cstar(0ULL);
>>> 
>>> That write is pointless. See the comment in wrmsrl_cstar().
>>
>> What I heard is that AMD is going to support FRED.
>>
>> Both LSTAR and CSTAR have no function when FRED is enabled, so maybe
>> just do NOT write to them?
>
>Right. If AMD needs to clear it then it's trivial enough to add a
>wrmsrl_cstar(0) to it.

Just to clarify: the only reason I added the writes here was to possibly make 
bugs easier to track down. There is indeed no functional reason.

Reply via email to