Re: kvm smm mode support?

Kevin O'Connor
2014-04-28T14:01:05Z

On Mon, Apr 28, 2014 at 03:49:31PM +0200, Gerd Hoffmann wrote:
> On Sa, 2014-04-26 at 13:02 +0200, Paolo Bonzini wrote:
> > Il 26/04/2014 11:40, Paolo Bonzini ha scritto:
> > > Il 25/04/2014 09:39, Gerd Hoffmann ha scritto:
> > >> Anyone has plans to add smm support to kvm?
> > >
> > > No plans, but it should be a Simple Matter Of Programming...
> >
> > Well, we need:
> >
> > - an extra ioctl to inject an SMI (can be modeled after KVM_NMI)
> >
> > - an extra user exit triggered when SMM is entered or left
> >
> > - an extra ioctl (or a GET/SET_ONE_REG implementation) to read/write
> > whether we are in SMM, used to determine whether the #UD produced by RSM
> > should be forwarded to the guest or trigger emulation.
>
> OVMF probably wants set aside some ram which can't be accessed by the
> OS, for secure boot emulation which is actually secure. Guess we'll
> just go map/unmap some slot in the smm enter/leave vmexits? Or there
> are better ways to do it?

Normally, the memory at 0xa0000-0xc0000 is only mapped when in SMM.
And, as I understand it, in a multi-cpu system only the core handling
the SMI can access that ram. (All other cores would continue to
access IO space at 0xa0000-0xc0000.)

-Kevin