RE: [PATCH v10 36/38] x86/fred: Add fred_syscall_init()

From: Li, Xin3
Date: Wed Sep 20 2023 - 00:33:54 EST


> > +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