X-Git-Url: https://git.openpandora.org/cgi-bin/gitweb.cgi?p=pandora-kernel.git;a=blobdiff_plain;f=virt%2Fkvm%2Fasync_pf.c;h=1758e32863cf26cd76d6a0c85632dfa74afbf2b3;hp=74268b4c2ee167932d514281bf6ecc3187462a3e;hb=21820c185fa08509ed2abaf4de43b56656eb038d;hpb=6d7f02a611ae1a917db301e700b55e3af554d877;ds=sidebyside diff --git a/virt/kvm/async_pf.c b/virt/kvm/async_pf.c index 74268b4c2ee1..1758e32863cf 100644 --- a/virt/kvm/async_pf.c +++ b/virt/kvm/async_pf.c @@ -101,8 +101,11 @@ void kvm_clear_async_pf_completion_queue(struct kvm_vcpu *vcpu) typeof(*work), queue); cancel_work_sync(&work->work); list_del(&work->queue); - if (!work->done) /* work was canceled */ + if (!work->done) { /* work was canceled */ + mmdrop(work->mm); + kvm_put_kvm(vcpu->kvm); /* == work->vcpu->kvm */ kmem_cache_free(async_pf_cache, work); + } } spin_lock(&vcpu->async_pf.lock);