lkml.org 
[lkml]   [2021]   [Jun]   [9]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [RFC v2-fix-v4 1/1] x86/tdx: Skip WBINVD instruction for T DX guest
On Tue, Jun 8, 2021, at 9:25 PM, Andi Kleen wrote:
>
> > I like this description, but shouldn't the logic be:
> >
> > if (!CPUID has hypervisor bit set)
> > wbinvd();
> >
> > As far as I know, most hypervisors will turn WBINVD into a noop and,
> > even if they don't, it seems to be that something must be really quite
> > wrong for a guest to need to WBINVD for ACPI purposes.
>
> KVM only turns it into a noop if there is no VT-d, because with VT-d you
> might need it to turn mappings into uncached and vice versa.

Wow, I found the kvm_arch_register_noncoherent_dma() stuff. That's horrifying. What's it for? Are there actually guests that use devices exposed by VFIO that expect WBINVD to work? That's a giant DoS hole.

>
> But yes the change would make sense for reboot. BTW I suspect for the
> reboot path it isn't really needed anywhere modern, so it might actually
> be ok to completely disable it. But that's some risk, so doing it only
> for hypervisor is reasonable.

I agree.

\
 
 \ /
  Last update: 2021-06-09 06:33    [W:0.954 / U:0.672 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site