On 15.12.2021 23:21, Andrew Cooper wrote:
> I've played with SERIALIZE, TSXLDTRK, MOVDIRI and MOVDIR64 on real hardware,
> and they all seem fine, including emulation support.
>
> SERIALIZE exists specifically to have a userspace usable serialising operation
> without other side effects. (The only other two choices are CPUID which is a
> VMExit under virt and clobbers 4 registers, and IRET-to-self which very slow
> and consumes content from the stack.)
>
> TSXLDTRK is a niche TSX feature, and TSX itself is niche outside of demos of
> speculative sidechannels. Leave the feature opt-in until a usecase is found,
> in an effort to preempt the multiple person years of effort it has taken to
> mop up TSX issues impacting every processor line.
>
> MOVDIRI and MOVDIR64 are harder to judge. They're architectural building
> blocks towards ENQCMD{,S} without obvious usecases on their own. They're of
> no use to domains without PCI devices, so leave them opt-in for now.
>
> Signed-off-by: Andrew Cooper <[email protected]>
Acked-by: Jan Beulich <[email protected]>