lkml.org 
[lkml]   [2015]   [Nov]   [20]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
Subject[PATCH V3 00/10] KVM: x86: MMU: Clean up x86's mmu code for future work
It seems like you all are busy now, so I've made this patch set so that
mechanical and trivial changes come before.

V2->V3:
Patch 01: Rebased and moved here. Updated stale comments.
We may also want to use a union, inside the struct, to eliminate casting to
(u64 *) type when spte is in the head in the future.
Patch 02-05: No change.
About patch 03: There was a comment on the usage of braces for a single line
else-if statement from Xiao. As I answered, checkpatch did not complain about
this, and when the corresponding if block has multiple lines, some developers
prefer/recommend this style. Feel free to modify it if you don't like it.
Patch 06: Changed WARN_ON to BUG_ON as Marcelo suggested.
Patch 07: Removed unnecessary zero-initialization of sp->parent_ptes as Xiao
suggested.

I think these seven patches are ready for inclusion.

Patch 08-10: No change now, though there were a few comments.
This patch set is not intended to optimize anything, so these patches try to
keep the way mark_unsync() gets called as much as possible: the only changes
are when this gets called for the new parent_pte and when
mmu_page_add_parent_pte() gets called.

For these three, I'm not sure what we should do now, still RFC?
We can also consider other approaches, e.g. moving link_shadow_page() in the
kvm_get_mmu_page() as Paolo suggested before.

Takuya

Takuya Yoshikawa (10):
[01] KVM: x86: MMU: Encapsulate the type of rmap-chain head in a new struct
[02] KVM: x86: MMU: Remove unused parameter of __direct_map()
[03] KVM: x86: MMU: Add helper function to clear a bit in unsync child bitmap
[04] KVM: x86: MMU: Make mmu_set_spte() return emulate value
[05] KVM: x86: MMU: Remove is_rmap_spte() and use is_shadow_present_pte()
[06] KVM: x86: MMU: Consolidate BUG_ON checks for reverse-mapped sptes
[07] KVM: x86: MMU: Move initialization of parent_ptes out from kvm_mmu_alloc_page()
[08] KVM: x86: MMU: Use for_each_rmap_spte macro instead of pte_list_walk()
[09] KVM: x86: MMU: Move parent_pte handling from kvm_mmu_get_page() to link_shadow_page()
[10] KVM: x86: MMU: Remove unused parameter parent_pte from kvm_mmu_get_page()

Documentation/virtual/kvm/mmu.txt | 4 +-
arch/x86/include/asm/kvm_host.h | 8 +-
arch/x86/kvm/mmu.c | 370 ++++++++++++++++++--------------------
arch/x86/kvm/mmu_audit.c | 15 +-
arch/x86/kvm/paging_tmpl.h | 20 +--
5 files changed, 201 insertions(+), 216 deletions(-)

--
2.1.0



\
 
 \ /
  Last update: 2015-11-20 09:41    [W:0.177 / U:0.016 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site