diff options
author | KarimAllah Ahmed <karahmed@amazon.de> | 2019-07-10 11:13:13 +0200 |
---|---|---|
committer | Paolo Bonzini <pbonzini@redhat.com> | 2019-07-10 16:25:39 +0200 |
commit | b614c6027896ff9ad6757122e84760d938cab15e (patch) | |
tree | 3a8901d55ac71cc4af0a2e671d48929f64db7df2 | |
parent | 548f7fb22234c6fe13c64459059fbd42058953c4 (diff) | |
download | linux-b614c6027896ff9ad6757122e84760d938cab15e.tar.gz linux-b614c6027896ff9ad6757122e84760d938cab15e.tar.bz2 linux-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>
-rw-r--r-- | virt/kvm/kvm_main.c | 2 |
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 |