qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH 0/7] kvm-i386: QEMU support for SMRAM
@ 2015-05-18 15:28 Paolo Bonzini
  2015-05-18 15:28 ` [Qemu-devel] [PATCH 1/7] kvm-all: put kvm_mem_flags to more work Paolo Bonzini
                   ` (6 more replies)
  0 siblings, 7 replies; 9+ messages in thread
From: Paolo Bonzini @ 2015-05-18 15:28 UTC (permalink / raw)
  To: qemu-devel

These are the new patches for SMRAM support, using multiple address spaces
and, thus, multiple KVMMemoryListeners.  No more layering violations, yay!

The meat is in patches 4 and 5, which parameterize KVM's memory listener
so that: 1) each memory listener handles its own array of memory slots;
2) each memory listener specifies an address space id for use in
KVM_SET_USER_MEMORY_REGION and KVM_GET_DIRTY_LOG.

Andrew Jones (1):
  kvm-all: put kvm_mem_flags to more work

Paolo Bonzini (6):
  kvm-all: remove useless typedef
  kvm-all: move internal types to kvm_int.h
  kvm-all: make KVM's memory listener more generic
  kvm-all: add support for multiple address spaces
  kvm-all: kvm_irqchip_create is not expected to fail
  target-i386: register a separate KVM address space including SMRAM regions

 include/sysemu/kvm_int.h |  40 ++++++++
 kvm-all.c                | 259 +++++++++++++++++++++++++----------------------
 target-i386/kvm.c        |  40 +++++++-
 3 files changed, 215 insertions(+), 124 deletions(-)
 create mode 100644 include/sysemu/kvm_int.h

-- 
1.8.3.1

^ permalink raw reply	[flat|nested] 9+ messages in thread
* [Qemu-devel] [RFC PATCH 0/7] x86: SMRAM implementation for KVM
@ 2015-05-15 16:36 Paolo Bonzini
  2015-05-15 16:36 ` [Qemu-devel] [PATCH 2/7] kvm-all: remove useless typedef Paolo Bonzini
  0 siblings, 1 reply; 9+ messages in thread
From: Paolo Bonzini @ 2015-05-15 16:36 UTC (permalink / raw)
  To: qemu-devel; +Cc: peter.maydell, lersek, avi.kivity, kraxel

This is the final piece of x86 SMM implementation, tested with PIIX
(low SMRAM) and Q35 (high SMRAM).

There is a problem---it has an awful layering violation in patch 5,
and an only slightly better one in patch 6.

If anyone has ideas, please speak up.  Note that it is not possible
to call KVM_SET_USER_MEMORY_REGION every time you enter or leave SMM,
because that would only work for single-processor virtual machines.

Paolo

Andrew Jones (1):
  kvm-all: put kvm_mem_flags to more work

Paolo Bonzini (6):
  kvm-all: remove useless typedef
  kvm-all: move KVMState definitions to kvm_int.h
  kvm-all: add KVM address space
  memory: add kvm_mem_flags to MemoryRegion
  i386: disable the region in /machine/smram when SMRAM is open
  kvm-i386: register SMRAM regions with KVM_MEM_X86_SMRAM

 hw/pci-host/piix.c       |   6 +++
 hw/pci-host/q35.c        |  20 ++++++---
 include/exec/memory.h    |   4 ++
 include/sysemu/kvm_int.h |  73 +++++++++++++++++++++++++++++++
 kvm-all.c                | 111 ++++++++++++++++-------------------------------
 memory.c                 |  17 ++++++--
 target-i386/kvm.c        |  27 ++++++++++++
 7 files changed, 173 insertions(+), 85 deletions(-)
 create mode 100644 include/sysemu/kvm_int.h

-- 
1.8.3.1

^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2015-05-18 15:30 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-05-18 15:28 [Qemu-devel] [PATCH 0/7] kvm-i386: QEMU support for SMRAM Paolo Bonzini
2015-05-18 15:28 ` [Qemu-devel] [PATCH 1/7] kvm-all: put kvm_mem_flags to more work Paolo Bonzini
2015-05-18 15:28 ` [Qemu-devel] [PATCH 2/7] kvm-all: remove useless typedef Paolo Bonzini
2015-05-18 15:28 ` [Qemu-devel] [PATCH 3/7] kvm-all: move internal types to kvm_int.h Paolo Bonzini
2015-05-18 15:28 ` [Qemu-devel] [PATCH 4/7] kvm-all: make KVM's memory listener more generic Paolo Bonzini
2015-05-18 15:28 ` [Qemu-devel] [PATCH 5/7] kvm-all: add support for multiple address spaces Paolo Bonzini
2015-05-18 15:28 ` [Qemu-devel] [PATCH 6/7] kvm-all: kvm_irqchip_create is not expected to fail Paolo Bonzini
2015-05-18 15:28 ` [Qemu-devel] [PATCH 7/7] target-i386: register a separate KVM address space including SMRAM regions Paolo Bonzini
  -- strict thread matches above, loose matches on Subject: below --
2015-05-15 16:36 [Qemu-devel] [RFC PATCH 0/7] x86: SMRAM implementation for KVM Paolo Bonzini
2015-05-15 16:36 ` [Qemu-devel] [PATCH 2/7] kvm-all: remove useless typedef Paolo Bonzini

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).