summaryrefslogtreecommitdiffstats
path: root/virt/kvm/async_pf.c
diff options
context:
space:
mode:
authorOleg Nesterov <oleg@redhat.com>2014-04-21 15:25:58 +0200
committerPaolo Bonzini <pbonzini@redhat.com>2014-04-28 17:24:25 +0200
commitd72d946d0b649b79709b99b9d5cb7269fff8afaa (patch)
tree3675c544f3193c0f829fb9b0d60af070a7c785bd /virt/kvm/async_pf.c
parent198c74f43f0f5473f99967aead30ddc622804bc1 (diff)
downloadlinux-stable-d72d946d0b649b79709b99b9d5cb7269fff8afaa.tar.gz
linux-stable-d72d946d0b649b79709b99b9d5cb7269fff8afaa.tar.bz2
linux-stable-d72d946d0b649b79709b99b9d5cb7269fff8afaa.zip
KVM: async_pf: kill the unnecessary use_mm/unuse_mm async_pf_execute()
async_pf_execute() has no reasons to adopt apf->mm, gup(current, mm) should work just fine even if current has another or NULL ->mm. Recently kvm_async_page_present_sync() was added insedie the "use_mm" section, but it seems that it doesn't need current->mm too. Signed-off-by: Oleg Nesterov <oleg@redhat.com> Reviewed-by: Andrea Arcangeli <aarcange@redhat.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Diffstat (limited to 'virt/kvm/async_pf.c')
-rw-r--r--virt/kvm/async_pf.c2
1 files changed, 0 insertions, 2 deletions
diff --git a/virt/kvm/async_pf.c b/virt/kvm/async_pf.c
index 10df100c4514..0ced4f31bc65 100644
--- a/virt/kvm/async_pf.c
+++ b/virt/kvm/async_pf.c
@@ -80,12 +80,10 @@ static void async_pf_execute(struct work_struct *work)
might_sleep();
- use_mm(mm);
down_read(&mm->mmap_sem);
get_user_pages(current, mm, addr, 1, 1, 0, NULL, NULL);
up_read(&mm->mmap_sem);
kvm_async_page_present_sync(vcpu, apf);
- unuse_mm(mm);
spin_lock(&vcpu->async_pf.lock);
list_add_tail(&apf->link, &vcpu->async_pf.done);