KVM: do not release the error pfn
After commit a2766325cf9f9, the error pfn is replaced by the
error code, it need not be released anymore
[ The patch has been compiling tested for powerpc ]
Signed-off-by: Xiao Guangrong <xiaoguangrong@linux.vnet.ibm.com>
Signed-off-by: Avi Kivity <avi@redhat.com>
diff --git a/virt/kvm/kvm_main.c b/virt/kvm/kvm_main.c
index 93d3c6e..eafba99 100644
--- a/virt/kvm/kvm_main.c
+++ b/virt/kvm/kvm_main.c
@@ -102,9 +102,6 @@
bool kvm_is_mmio_pfn(pfn_t pfn)
{
- if (is_error_pfn(pfn))
- return false;
-
if (pfn_valid(pfn)) {
int reserved;
struct page *tail = pfn_to_page(pfn);
@@ -1165,11 +1162,14 @@
static struct page *kvm_pfn_to_page(pfn_t pfn)
{
- WARN_ON(kvm_is_mmio_pfn(pfn));
-
- if (is_error_pfn(pfn) || kvm_is_mmio_pfn(pfn))
+ if (is_error_pfn(pfn))
return KVM_ERR_PTR_BAD_PAGE;
+ if (kvm_is_mmio_pfn(pfn)) {
+ WARN_ON(1);
+ return KVM_ERR_PTR_BAD_PAGE;
+ }
+
return pfn_to_page(pfn);
}
@@ -1193,7 +1193,9 @@
void kvm_release_pfn_clean(pfn_t pfn)
{
- if (!is_error_pfn(pfn) && !kvm_is_mmio_pfn(pfn))
+ WARN_ON(is_error_pfn(pfn));
+
+ if (!kvm_is_mmio_pfn(pfn))
put_page(pfn_to_page(pfn));
}
EXPORT_SYMBOL_GPL(kvm_release_pfn_clean);