| 
    
 [Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] RE: [PATCH v10 36/38] x86/fred: Add fred_syscall_init()
 On September 20, 2023 1:18:14 AM PDT, Thomas Gleixner <tglx@xxxxxxxxxxxxx> 
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.
 
  | 
  
![]()  | 
            
         Lists.xenproject.org is hosted with RackSpace, monitoring our  |