The patch titled KVM: MMU: Treat user-mode faults as a hint that a page is no longer a page table has been removed from the -mm tree. Its filename was kvm-mmu-treat-user-mode-faults-as-a-hint-that-a-page-is-no-longer-a-page-table.patch This patch was dropped because it was merged into mainline or a subsystem tree ------------------------------------------------------ Subject: KVM: MMU: Treat user-mode faults as a hint that a page is no longer a page table From: Avi Kivity <avi@xxxxxxxxxxxx> Signed-off-by: Avi Kivity <avi@xxxxxxxxxxxx> Acked-by: Ingo Molnar <mingo@xxxxxxx> Signed-off-by: Andrew Morton <akpm@xxxxxxxx> --- drivers/kvm/paging_tmpl.h | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff -puN drivers/kvm/paging_tmpl.h~kvm-mmu-treat-user-mode-faults-as-a-hint-that-a-page-is-no-longer-a-page-table drivers/kvm/paging_tmpl.h --- a/drivers/kvm/paging_tmpl.h~kvm-mmu-treat-user-mode-faults-as-a-hint-that-a-page-is-no-longer-a-page-table +++ a/drivers/kvm/paging_tmpl.h @@ -271,6 +271,7 @@ static int FNAME(fix_write_pf)(struct kv pt_element_t *guest_ent; int writable_shadow; gfn_t gfn; + struct kvm_mmu_page *page; if (is_writeble_pte(*shadow_ent)) return 0; @@ -303,7 +304,17 @@ static int FNAME(fix_write_pf)(struct kv } gfn = walker->gfn; - if (kvm_mmu_lookup_page(vcpu, gfn)) { + + if (user) { + /* + * Usermode page faults won't be for page table updates. + */ + while ((page = kvm_mmu_lookup_page(vcpu, gfn)) != NULL) { + pgprintk("%s: zap %lx %x\n", + __FUNCTION__, gfn, page->role.word); + kvm_mmu_zap_page(vcpu, page); + } + } else if (kvm_mmu_lookup_page(vcpu, gfn)) { pgprintk("%s: found shadow page for %lx, marking ro\n", __FUNCTION__, gfn); *write_pt = 1; _ Patches currently in -mm which might be from avi@xxxxxxxxxxxx are - To unsubscribe from this list: send the line "unsubscribe mm-commits" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html