Message ID | 1368706673-8530-5-git-send-email-xiaoguangrong@linux.vnet.ibm.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On Thu, May 16, 2013 at 08:17:49PM +0800, Xiao Guangrong wrote: > Replace kvm_mmu_zap_all by kvm_mmu_invalidate_memslot_pages except on > the path of mmu_notifier->release() which will be fixed in > the later patch > Why ->release() cannot use kvm_mmu_invalidate_memslot_pages()? > Signed-off-by: Xiao Guangrong <xiaoguangrong@linux.vnet.ibm.com> > --- > arch/x86/kvm/x86.c | 4 ++-- > 1 files changed, 2 insertions(+), 2 deletions(-) > > diff --git a/arch/x86/kvm/x86.c b/arch/x86/kvm/x86.c > index d885418..c2dd732 100644 > --- a/arch/x86/kvm/x86.c > +++ b/arch/x86/kvm/x86.c > @@ -5528,7 +5528,7 @@ static int emulator_fix_hypercall(struct x86_emulate_ctxt *ctxt) > * to ensure that the updated hypercall appears atomically across all > * VCPUs. > */ > - kvm_mmu_zap_all(vcpu->kvm); > + kvm_mmu_invalidate_memslot_pages(vcpu->kvm, NULL); > > kvm_x86_ops->patch_hypercall(vcpu, instruction); > > @@ -7079,7 +7079,7 @@ void kvm_arch_flush_shadow_all(struct kvm *kvm) > void kvm_arch_flush_shadow_memslot(struct kvm *kvm, > struct kvm_memory_slot *slot) > { > - kvm_arch_flush_shadow_all(kvm); > + kvm_mmu_invalidate_memslot_pages(kvm, slot); > } > > int kvm_arch_vcpu_runnable(struct kvm_vcpu *vcpu) > -- > 1.7.7.6 -- Gleb. -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On 05/17/2013 12:19 AM, Gleb Natapov wrote: > On Thu, May 16, 2013 at 08:17:49PM +0800, Xiao Guangrong wrote: >> Replace kvm_mmu_zap_all by kvm_mmu_invalidate_memslot_pages except on >> the path of mmu_notifier->release() which will be fixed in >> the later patch >> > Why ->release() cannot use kvm_mmu_invalidate_memslot_pages()? Good eyes. Forgot to update this part after applying new approach of kvm_mmu_invalidate_memslot_pages(). Will update it. -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
diff --git a/arch/x86/kvm/x86.c b/arch/x86/kvm/x86.c index d885418..c2dd732 100644 --- a/arch/x86/kvm/x86.c +++ b/arch/x86/kvm/x86.c @@ -5528,7 +5528,7 @@ static int emulator_fix_hypercall(struct x86_emulate_ctxt *ctxt) * to ensure that the updated hypercall appears atomically across all * VCPUs. */ - kvm_mmu_zap_all(vcpu->kvm); + kvm_mmu_invalidate_memslot_pages(vcpu->kvm, NULL); kvm_x86_ops->patch_hypercall(vcpu, instruction); @@ -7079,7 +7079,7 @@ void kvm_arch_flush_shadow_all(struct kvm *kvm) void kvm_arch_flush_shadow_memslot(struct kvm *kvm, struct kvm_memory_slot *slot) { - kvm_arch_flush_shadow_all(kvm); + kvm_mmu_invalidate_memslot_pages(kvm, slot); } int kvm_arch_vcpu_runnable(struct kvm_vcpu *vcpu)
Replace kvm_mmu_zap_all by kvm_mmu_invalidate_memslot_pages except on the path of mmu_notifier->release() which will be fixed in the later patch Signed-off-by: Xiao Guangrong <xiaoguangrong@linux.vnet.ibm.com> --- arch/x86/kvm/x86.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-)