Re: [PATCH RFC] KVM: nSVM: Fix L1 state corruption upon return from SMM

From: Maxim Levitsky
Date: Wed Jun 23 2021 - 07:39:47 EST


On Wed, 2021-06-23 at 11:39 +0200, Paolo Bonzini wrote:
> On 23/06/21 09:44, Vitaly Kuznetsov wrote:
> > - RFC: I'm not 100% sure my 'smart' idea to use currently-unused HSAVE area
> > is that smart. Also, we don't even seem to check that L1 set it up upon
> > nested VMRUN so hypervisors which don't do that may remain broken. A very
> > much needed selftest is also missing.
>
> It's certainly a bit weird, but I guess it counts as smart too. It
> needs a few more comments, but I think it's a good solution.
>
> One could delay the backwards memcpy until vmexit time, but that would
> require a new flag so it's not worth it for what is a pretty rare and
> already expensive case.
>
> Paolo
>

I wonder what would happen if SMM entry is triggered by L1 (say with ICR),
on a VCPU which is in L2. Such exit should go straight to L1 SMM mode.

I will very very soon, maybe even today start testing SMM with my migration
tests and such. I hope I will find more bugs in this area.

Thanks for fixing this issue!

Best regards,
Maxim Levitsky