From: KarimAllah Ahmed Date: Wed, 10 Jul 2019 09:13:13 +0000 (+0200) Subject: KVM: Properly check if "page" is valid in kvm_vcpu_unmap X-Git-Tag: v5.2.3~83 X-Git-Url: https://www.infradead.org/git/?a=commitdiff_plain;h=3ac6994561a29bff4bdf65833d6a88c0abab1691;p=users%2Fdwmw2%2Flinux.git KVM: Properly check if "page" is valid in kvm_vcpu_unmap commit b614c6027896ff9ad6757122e84760d938cab15e upstream. The field "page" is initialized to KVM_UNMAPPED_PAGE when it is not used (i.e. when the memory lives outside kernel control). So this check will always end up using kunmap even for memremap regions. Fixes: e45adf665a53 ("KVM: Introduce a new guest mapping API") Cc: stable@vger.kernel.org Signed-off-by: KarimAllah Ahmed Signed-off-by: Paolo Bonzini Signed-off-by: Greg Kroah-Hartman --- diff --git a/virt/kvm/kvm_main.c b/virt/kvm/kvm_main.c index 2f2d24a4dd5c2..e629766f0ec87 100644 --- a/virt/kvm/kvm_main.c +++ b/virt/kvm/kvm_main.c @@ -1790,7 +1790,7 @@ void kvm_vcpu_unmap(struct kvm_vcpu *vcpu, struct kvm_host_map *map, if (!map->hva) return; - if (map->page) + if (map->page != KVM_UNMAPPED_PAGE) kunmap(map->page); #ifdef CONFIG_HAS_IOMEM else