> > +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? Thanks! Xin