xen: handle highmem pages correctly when shrinking a domain
[linux.git] / drivers / xen / balloon.c
index 8069d520c46048fee02441793d5b91977ae680df..2ba8f95516a0b023c8afce948b757e2884b3cb21 100644 (file)
@@ -299,10 +299,13 @@ static int decrease_reservation(unsigned long nr_pages)
 
                scrub_page(page);
 
-               ret = HYPERVISOR_update_va_mapping(
-                       (unsigned long)__va(pfn << PAGE_SHIFT),
-                       __pte_ma(0), 0);
-               BUG_ON(ret);
+               if (!PageHighMem(page)) {
+                       ret = HYPERVISOR_update_va_mapping(
+                               (unsigned long)__va(pfn << PAGE_SHIFT),
+                               __pte_ma(0), 0);
+                       BUG_ON(ret);
+                }
+
        }
 
        /* Ensure that ballooned highmem pages don't have kmaps. */
This page took 0.02603 seconds and 4 git commands to generate.