All of lore.kernel.org
 help / color / mirror / Atom feed
From: Avi Kivity <avi.kivity@gmail.com>
To: Paolo Bonzini <pbonzini@redhat.com>,
	linux-kernel@vger.kernel.org, kvm@vger.kernel.org
Cc: guangrong.xiao@linux.intel.com, rkrcmar@redhat.com, bdas@redhat.com
Subject: Re: [PATCH v2 00/13] SMM implementation for KVM
Date: Fri, 05 Jun 2015 13:17:11 +0300	[thread overview]
Message-ID: <55717727.8060101@gmail.com> (raw)
In-Reply-To: <1432746314-50196-1-git-send-email-pbonzini@redhat.com>

On 05/27/2015 08:05 PM, Paolo Bonzini wrote:
> This brings together the remaining parts of SMM.  For now I've left the
> "weird" interaction between SMM and NMI blocking, and I'm using the same
> format for the state save area (which is also the one used by QEMU) as
> the RFC.
>
> It builds on the previous cleanup patches, which (with the exception
> of "KVM: x86: pass kvm_mmu_page to gfn_to_rmap") are now in kvm/queue.
> The first six patches are more or less the same as the previous version,
> while the address spaces part hopefully touches all affected functions
> now.
>
> Patches 1-6 implement the SMM API and world switch; patches 7-12
> implements the multiple address spaces; patch 13 ties the loose
> ends and advertises the capability.
>
> Tested with SeaBIOS and OVMF, where SMM provides the trusted base
> for secure boot.
>

Nice work.  While I did not do a thorough review, the mmu bits look robust.



> Thanks,
>
> Paolo
>
> Paolo Bonzini (13):
>    KVM: x86: introduce num_emulated_msrs
>    KVM: x86: pass host_initiated to functions that read MSRs
>    KVM: x86: pass the whole hflags field to emulator and back
>    KVM: x86: API changes for SMM support
>    KVM: x86: stubs for SMM support
>    KVM: x86: save/load state on SMM switch
>    KVM: add vcpu-specific functions to read/write/translate GFNs
>    KVM: implement multiple address spaces
>    KVM: x86: pass kvm_mmu_page to gfn_to_rmap
>    KVM: x86: use vcpu-specific functions to read/write/translate GFNs
>    KVM: x86: work on all available address spaces
>    KVM: x86: add SMM to the MMU role, support SMRAM address space
>    KVM: x86: advertise KVM_CAP_X86_SMM
>
>   Documentation/virtual/kvm/api.txt        |  52 ++-
>   arch/powerpc/include/asm/kvm_book3s_64.h |   2 +-
>   arch/x86/include/asm/kvm_emulate.h       |   9 +-
>   arch/x86/include/asm/kvm_host.h          |  44 ++-
>   arch/x86/include/asm/vmx.h               |   1 +
>   arch/x86/include/uapi/asm/kvm.h          |  11 +-
>   arch/x86/kvm/cpuid.h                     |   8 +
>   arch/x86/kvm/emulate.c                   | 262 +++++++++++++-
>   arch/x86/kvm/kvm_cache_regs.h            |   5 +
>   arch/x86/kvm/lapic.c                     |   4 +-
>   arch/x86/kvm/mmu.c                       | 171 +++++-----
>   arch/x86/kvm/mmu_audit.c                 |  16 +-
>   arch/x86/kvm/paging_tmpl.h               |  18 +-
>   arch/x86/kvm/svm.c                       |  73 ++--
>   arch/x86/kvm/trace.h                     |  22 ++
>   arch/x86/kvm/vmx.c                       | 106 +++---
>   arch/x86/kvm/x86.c                       | 562 ++++++++++++++++++++++++++-----
>   include/linux/kvm_host.h                 |  49 ++-
>   include/uapi/linux/kvm.h                 |   6 +-
>   virt/kvm/kvm_main.c                      | 237 ++++++++++---
>   20 files changed, 1337 insertions(+), 321 deletions(-)
>

      parent reply	other threads:[~2015-06-05 10:17 UTC|newest]

Thread overview: 45+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-05-27 17:05 [PATCH v2 00/13] SMM implementation for KVM Paolo Bonzini
2015-05-27 17:05 ` [PATCH v2 01/13] KVM: x86: introduce num_emulated_msrs Paolo Bonzini
2015-05-27 17:05 ` [PATCH v2 02/13] KVM: x86: pass host_initiated to functions that read MSRs Paolo Bonzini
2015-05-27 17:05 ` [PATCH v2 03/13] KVM: x86: pass the whole hflags field to emulator and back Paolo Bonzini
2015-05-27 17:05 ` [PATCH v2 04/13] KVM: x86: API changes for SMM support Paolo Bonzini
2015-05-28  9:00   ` Paolo Bonzini
2015-05-28 13:48     ` Radim Krčmář
2015-05-29 18:50   ` Radim Krčmář
2015-05-27 17:05 ` [PATCH v2 05/13] KVM: x86: stubs " Paolo Bonzini
2015-05-27 17:05 ` [PATCH v2 06/13] KVM: x86: save/load state on SMM switch Paolo Bonzini
2015-06-03 19:02   ` Radim Krčmář
2015-06-04  6:14     ` Paolo Bonzini
2015-06-04 11:34       ` Radim Krčmář
2015-06-04 13:59     ` Paolo Bonzini
2015-05-27 17:05 ` [PATCH v2 07/13] KVM: add vcpu-specific functions to read/write/translate GFNs Paolo Bonzini
2015-05-29 19:23   ` Radim Krčmář
2015-06-05 10:26     ` Paolo Bonzini
2015-06-05 12:10       ` Radim Krčmář
2015-06-05 12:43         ` Paolo Bonzini
2015-06-05 12:46         ` Paolo Bonzini
2015-06-05 15:13           ` Radim Krčmář
2015-06-05 15:27             ` Paolo Bonzini
2015-05-27 17:05 ` [PATCH v2 08/13] KVM: implement multiple address spaces Paolo Bonzini
2015-06-09  3:20   ` Xiao Guangrong
2015-05-27 17:05 ` [PATCH v2 09/13] KVM: x86: pass kvm_mmu_page to gfn_to_rmap Paolo Bonzini
2015-06-09  3:28   ` Xiao Guangrong
2015-06-17  8:15     ` Paolo Bonzini
2015-06-18  4:41       ` Xiao Guangrong
2015-05-27 17:05 ` [PATCH v2 10/13] KVM: x86: use vcpu-specific functions to read/write/translate GFNs Paolo Bonzini
2015-06-09  3:38   ` Xiao Guangrong
2015-05-27 17:05 ` [PATCH v2 11/13] KVM: x86: work on all available address spaces Paolo Bonzini
2015-06-09  3:45   ` Xiao Guangrong
2015-05-27 17:05 ` [PATCH v2 12/13] KVM: x86: add SMM to the MMU role, support SMRAM address space Paolo Bonzini
2015-06-09  4:01   ` Xiao Guangrong
2015-06-17  8:18     ` Paolo Bonzini
2015-06-18  5:02       ` Xiao Guangrong
2015-06-18  7:02         ` Paolo Bonzini
2015-05-27 17:05 ` [PATCH v2 13/13] KVM: x86: advertise KVM_CAP_X86_SMM Paolo Bonzini
2015-05-29 19:03 ` [PATCH v2 00/13] SMM implementation for KVM Radim Krčmář
2015-05-29 19:34   ` Paolo Bonzini
2015-06-04  8:56 ` [PATCH v2 14/13] KVM: x86: latch INITs while in system management mode Paolo Bonzini
2015-06-04  8:58 ` Paolo Bonzini
2015-06-04 12:26 ` [PATCH v2 00/13] SMM implementation for KVM Radim Krčmář
2015-06-04 13:49   ` Paolo Bonzini
2015-06-05 10:17 ` Avi Kivity [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=55717727.8060101@gmail.com \
    --to=avi.kivity@gmail.com \
    --cc=bdas@redhat.com \
    --cc=guangrong.xiao@linux.intel.com \
    --cc=kvm@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=pbonzini@redhat.com \
    --cc=rkrcmar@redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.