public inbox for kvm@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/5] Fix some mmu/emulator atomicity issues (v2)
@ 2010-03-15 11:59 Avi Kivity
  2010-03-15 11:59 ` [PATCH 1/5] KVM: MMU: Consolidate two guest pte reads in kvm_mmu_pte_write() Avi Kivity
                   ` (5 more replies)
  0 siblings, 6 replies; 15+ messages in thread
From: Avi Kivity @ 2010-03-15 11:59 UTC (permalink / raw)
  To: Marcelo Tosatti; +Cc: kvm

Currently when we emulate a locked operation into a shadowed guest page
table, we perform a write rather than a true atomic.  This is indicated
by the "emulating exchange as write" message that shows up in dmesg.

In addition, the pte prefetch operation during invlpg suffered from a
race.  This was fixed by removing the operation.

This patchset fixes both issues and reinstates pte prefetch on invlpg.

v3:
   - rebase against next branch (resolves conflicts via hypercall patch)

v2:
   - fix truncated description for patch 1
   - add new patch 4, which fixes a bug in patch 5

Avi Kivity (5):
  KVM: MMU: Consolidate two guest pte reads in kvm_mmu_pte_write()
  KVM: Make locked operations truly atomic
  KVM: Don't follow an atomic operation by a non-atomic one
  KVM: MMU: Do not instantiate nontrapping spte on unsync page
  KVM: MMU: Reinstate pte prefetch on invlpg

 arch/x86/include/asm/kvm_host.h |    1 +
 arch/x86/kvm/mmu.c              |   78 +++++++++++++++++----------------
 arch/x86/kvm/paging_tmpl.h      |   25 ++++++++++-
 arch/x86/kvm/x86.c              |   90 +++++++++++++++++++++++++++------------
 4 files changed, 127 insertions(+), 67 deletions(-)


^ permalink raw reply	[flat|nested] 15+ messages in thread
* [PATCH 0/5] Fix some mmu/emulator atomicity issues (v2)
@ 2010-03-10 14:50 Avi Kivity
  2010-03-10 14:50 ` [PATCH 2/5] KVM: Make locked operations truly atomic Avi Kivity
  0 siblings, 1 reply; 15+ messages in thread
From: Avi Kivity @ 2010-03-10 14:50 UTC (permalink / raw)
  To: kvm

Currently when we emulate a locked operation into a shadowed guest page
table, we perform a write rather than a true atomic.  This is indicated
by the "emulating exchange as write" message that shows up in dmesg.

In addition, the pte prefetch operation during invlpg suffered from a
race.  This was fixed by removing the operation.

This patchset fixes both issues and reinstates pte prefetch on invlpg.

v2:
   - fix truncated description for patch 1
   - add new patch 4, which fixes a bug in patch 5

Avi Kivity (5):
  KVM: MMU: Consolidate two guest pte reads in kvm_mmu_pte_write()
  KVM: Make locked operations truly atomic
  KVM: Don't follow an atomic operation by a non-atomic one
  KVM: MMU: Do not instantiate nontrapping spte on unsync page
  KVM: MMU: Reinstate pte prefetch on invlpg

 arch/x86/include/asm/kvm_host.h |    1 +
 arch/x86/kvm/mmu.c              |   78 +++++++++++++++---------------
 arch/x86/kvm/paging_tmpl.h      |   25 +++++++++-
 arch/x86/kvm/x86.c              |  101 ++++++++++++++++++++++++++++-----------
 4 files changed, 137 insertions(+), 68 deletions(-)


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

end of thread, other threads:[~2010-03-21 14:34 UTC | newest]

Thread overview: 15+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-03-15 11:59 [PATCH 0/5] Fix some mmu/emulator atomicity issues (v2) Avi Kivity
2010-03-15 11:59 ` [PATCH 1/5] KVM: MMU: Consolidate two guest pte reads in kvm_mmu_pte_write() Avi Kivity
2010-03-15 11:59 ` [PATCH 2/5] KVM: Make locked operations truly atomic Avi Kivity
2010-03-17  7:45   ` Jan Kiszka
2010-03-17  8:05     ` Avi Kivity
2010-03-20  9:14       ` [PATCH] KVM: x86: Fix 32-bit build breakage due to typo Jan Kiszka
2010-03-21 14:34         ` Avi Kivity
2010-03-15 11:59 ` [PATCH 3/5] KVM: Don't follow an atomic operation by a non-atomic one Avi Kivity
2010-03-15 11:59 ` [PATCH 4/5] KVM: MMU: Do not instantiate nontrapping spte on unsync page Avi Kivity
2010-03-15 11:59 ` [PATCH 5/5] KVM: MMU: Reinstate pte prefetch on invlpg Avi Kivity
2010-03-16 16:36 ` [PATCH 0/5] Fix some mmu/emulator atomicity issues (v2) Marcelo Tosatti
2010-03-16 18:22   ` Alexander Graf
2010-03-16 19:33     ` Marcelo Tosatti
2010-03-17  3:58       ` Avi Kivity
  -- strict thread matches above, loose matches on Subject: below --
2010-03-10 14:50 Avi Kivity
2010-03-10 14:50 ` [PATCH 2/5] KVM: Make locked operations truly atomic Avi Kivity

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox