diff options
Diffstat (limited to 'drivers/xen')
-rw-r--r-- | drivers/xen/balloon.c | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/drivers/xen/balloon.c b/drivers/xen/balloon.c index 8069d520c460..2ba8f95516a0 100644 --- a/drivers/xen/balloon.c +++ b/drivers/xen/balloon.c | |||
@@ -299,10 +299,13 @@ static int decrease_reservation(unsigned long nr_pages) | |||
299 | 299 | ||
300 | scrub_page(page); | 300 | scrub_page(page); |
301 | 301 | ||
302 | ret = HYPERVISOR_update_va_mapping( | 302 | if (!PageHighMem(page)) { |
303 | (unsigned long)__va(pfn << PAGE_SHIFT), | 303 | ret = HYPERVISOR_update_va_mapping( |
304 | __pte_ma(0), 0); | 304 | (unsigned long)__va(pfn << PAGE_SHIFT), |
305 | BUG_ON(ret); | 305 | __pte_ma(0), 0); |
306 | BUG_ON(ret); | ||
307 | } | ||
308 | |||
306 | } | 309 | } |
307 | 310 | ||
308 | /* Ensure that ballooned highmem pages don't have kmaps. */ | 311 | /* Ensure that ballooned highmem pages don't have kmaps. */ |