aboutsummaryrefslogtreecommitdiffstats
path: root/virt/kvm/kvm_main.c
diff options
context:
space:
mode:
Diffstat (limited to 'virt/kvm/kvm_main.c')
-rw-r--r--virt/kvm/kvm_main.c16
1 files changed, 8 insertions, 8 deletions
diff --git a/virt/kvm/kvm_main.c b/virt/kvm/kvm_main.c
index c5c186af823b..f5283438ee05 100644
--- a/virt/kvm/kvm_main.c
+++ b/virt/kvm/kvm_main.c
@@ -107,10 +107,10 @@ EXPORT_SYMBOL_GPL(kvm_rebooting);
107 107
108static bool largepages_enabled = true; 108static bool largepages_enabled = true;
109 109
110bool kvm_is_mmio_pfn(pfn_t pfn) 110bool kvm_is_reserved_pfn(pfn_t pfn)
111{ 111{
112 if (pfn_valid(pfn)) 112 if (pfn_valid(pfn))
113 return !is_zero_pfn(pfn) && PageReserved(pfn_to_page(pfn)); 113 return PageReserved(pfn_to_page(pfn));
114 114
115 return true; 115 return true;
116} 116}
@@ -1301,7 +1301,7 @@ static pfn_t hva_to_pfn(unsigned long addr, bool atomic, bool *async,
1301 else if ((vma->vm_flags & VM_PFNMAP)) { 1301 else if ((vma->vm_flags & VM_PFNMAP)) {
1302 pfn = ((addr - vma->vm_start) >> PAGE_SHIFT) + 1302 pfn = ((addr - vma->vm_start) >> PAGE_SHIFT) +
1303 vma->vm_pgoff; 1303 vma->vm_pgoff;
1304 BUG_ON(!kvm_is_mmio_pfn(pfn)); 1304 BUG_ON(!kvm_is_reserved_pfn(pfn));
1305 } else { 1305 } else {
1306 if (async && vma_is_valid(vma, write_fault)) 1306 if (async && vma_is_valid(vma, write_fault))
1307 *async = true; 1307 *async = true;
@@ -1407,7 +1407,7 @@ static struct page *kvm_pfn_to_page(pfn_t pfn)
1407 if (is_error_noslot_pfn(pfn)) 1407 if (is_error_noslot_pfn(pfn))
1408 return KVM_ERR_PTR_BAD_PAGE; 1408 return KVM_ERR_PTR_BAD_PAGE;
1409 1409
1410 if (kvm_is_mmio_pfn(pfn)) { 1410 if (kvm_is_reserved_pfn(pfn)) {
1411 WARN_ON(1); 1411 WARN_ON(1);
1412 return KVM_ERR_PTR_BAD_PAGE; 1412 return KVM_ERR_PTR_BAD_PAGE;
1413 } 1413 }
@@ -1436,7 +1436,7 @@ EXPORT_SYMBOL_GPL(kvm_release_page_clean);
1436 1436
1437void kvm_release_pfn_clean(pfn_t pfn) 1437void kvm_release_pfn_clean(pfn_t pfn)
1438{ 1438{
1439 if (!is_error_noslot_pfn(pfn) && !kvm_is_mmio_pfn(pfn)) 1439 if (!is_error_noslot_pfn(pfn) && !kvm_is_reserved_pfn(pfn))
1440 put_page(pfn_to_page(pfn)); 1440 put_page(pfn_to_page(pfn));
1441} 1441}
1442EXPORT_SYMBOL_GPL(kvm_release_pfn_clean); 1442EXPORT_SYMBOL_GPL(kvm_release_pfn_clean);
@@ -1457,7 +1457,7 @@ static void kvm_release_pfn_dirty(pfn_t pfn)
1457 1457
1458void kvm_set_pfn_dirty(pfn_t pfn) 1458void kvm_set_pfn_dirty(pfn_t pfn)
1459{ 1459{
1460 if (!kvm_is_mmio_pfn(pfn)) { 1460 if (!kvm_is_reserved_pfn(pfn)) {
1461 struct page *page = pfn_to_page(pfn); 1461 struct page *page = pfn_to_page(pfn);
1462 if (!PageReserved(page)) 1462 if (!PageReserved(page))
1463 SetPageDirty(page); 1463 SetPageDirty(page);
@@ -1467,14 +1467,14 @@ EXPORT_SYMBOL_GPL(kvm_set_pfn_dirty);
1467 1467
1468void kvm_set_pfn_accessed(pfn_t pfn) 1468void kvm_set_pfn_accessed(pfn_t pfn)
1469{ 1469{
1470 if (!kvm_is_mmio_pfn(pfn)) 1470 if (!kvm_is_reserved_pfn(pfn))
1471 mark_page_accessed(pfn_to_page(pfn)); 1471 mark_page_accessed(pfn_to_page(pfn));
1472} 1472}
1473EXPORT_SYMBOL_GPL(kvm_set_pfn_accessed); 1473EXPORT_SYMBOL_GPL(kvm_set_pfn_accessed);
1474 1474
1475void kvm_get_pfn(pfn_t pfn) 1475void kvm_get_pfn(pfn_t pfn)
1476{ 1476{
1477 if (!kvm_is_mmio_pfn(pfn)) 1477 if (!kvm_is_reserved_pfn(pfn))
1478 get_page(pfn_to_page(pfn)); 1478 get_page(pfn_to_page(pfn));
1479} 1479}
1480EXPORT_SYMBOL_GPL(kvm_get_pfn); 1480EXPORT_SYMBOL_GPL(kvm_get_pfn);