summaryrefslogtreecommitdiffstats
path: root/virt
diff options
context:
space:
mode:
authorKarimAllah Ahmed <karahmed@amazon.de>2019-07-10 11:13:13 +0200
committerPaolo Bonzini <pbonzini@redhat.com>2019-07-10 16:25:39 +0200
commitb614c6027896ff9ad6757122e84760d938cab15e (patch)
tree3a8901d55ac71cc4af0a2e671d48929f64db7df2 /virt
parent548f7fb22234c6fe13c64459059fbd42058953c4 (diff)
downloadlinux-stable-b614c6027896ff9ad6757122e84760d938cab15e.tar.gz
linux-stable-b614c6027896ff9ad6757122e84760d938cab15e.tar.bz2
linux-stable-b614c6027896ff9ad6757122e84760d938cab15e.zip
KVM: Properly check if "page" is valid in kvm_vcpu_unmap
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 <karahmed@amazon.de> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Diffstat (limited to 'virt')
-rw-r--r--virt/kvm/kvm_main.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/virt/kvm/kvm_main.c b/virt/kvm/kvm_main.c
index 9613987ef4c8..49dd5cc73d95 100644
--- a/virt/kvm/kvm_main.c
+++ b/virt/kvm/kvm_main.c
@@ -1793,7 +1793,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