Re: [RFC KVM 18/27] kvm/isolation: function to copy page table entries for percpu buffer

From: Peter Zijlstra
Date: Tue May 14 2019 - 13:07:17 EST


On Tue, May 14, 2019 at 06:24:48PM +0200, Alexandre Chartre wrote:
> On 5/14/19 5:23 PM, Andy Lutomirski wrote:

> > How important is the ability to enable IRQs while running with the KVM
> > page tables?
> >
>
> I can't say, I would need to check but we probably need IRQs at least for
> some timers. Sounds like you would really prefer IRQs to be disabled.
>

I think what amluto is getting at, is:

again:
local_irq_disable();
switch_to_kvm_mm();
/* do very little -- (A) */
VMEnter()

/* runs as guest */

/* IRQ happens */
WMExit()
/* inspect exit raisin */
if (/* IRQ pending */) {
switch_from_kvm_mm();
local_irq_restore();
goto again;
}


but I don't know anything about VMX/SVM at all, so the above might not
be feasible, specifically I read something about how VMX allows NMIs
where SVM did not somewhere around (A) -- or something like that,
earlier in this thread.