xen/balloon: use hotplugged pages for foreign mappings etc.
authorDavid Vrabel <david.vrabel@citrix.com>
Thu, 25 Jun 2015 15:29:18 +0000 (16:29 +0100)
committerDavid Vrabel <david.vrabel@citrix.com>
Fri, 23 Oct 2015 13:20:05 +0000 (14:20 +0100)
commit1cf6a6c82918c9aad4bb73a7e7379a649e4d8e50
tree395640a0a5aeab7e0ebb807764923628f508dc54
parent81b286e0f1fe520f2a96f736ffa7e508ac9139ba
xen/balloon: use hotplugged pages for foreign mappings etc.

alloc_xenballooned_pages() is used to get ballooned pages to back
foreign mappings etc.  Instead of having to balloon out real pages,
use (if supported) hotplugged memory.

This makes more memory available to the guest and reduces
fragmentation in the p2m.

This is only enabled if the xen.balloon.hotplug_unpopulated sysctl is
set to 1.  This sysctl defaults to 0 in case the udev rules to
automatically online hotplugged memory do not exist.

Signed-off-by: David Vrabel <david.vrabel@citrix.com>
Reviewed-by: Daniel Kiper <daniel.kiper@oracle.com>
---
v3:
- Add xen.balloon.hotplug_unpopulated sysctl to enable use of hotplug
  for unpopulated pages.
drivers/xen/balloon.c
include/xen/balloon.h