Re: [PATCH v10 10/11] x86/tdx: Don't write CSTAR MSR on Intel

From: Andi Kleen
Date: Thu Oct 14 2021 - 09:47:18 EST



- wrmsrl(MSR_CSTAR, (unsigned long)entry_SYSCALL_compat);
+ /*
+ * CSTAR is not needed on Intel because it doesn't support
+ * 32bit SYSCALL, but only SYSENTER. On a TDX guest
+ * it leads to a #GP.
Sigh. Above you write it raises #VE, but now it's #GP !?!


The unhandled #VE trap is handled like a #GP, which is then caught by the kernel wrmsr code.

So both are correct.


Intel CPUs do not support 32-bit SYSCALL. Writing to MSR_CSTAR
is normaly ignored by the CPU, but raises a #VE trap in a TDX
guest.

Hmm?