linux/include/xen
David Vrabel 4e8c0c8c4b xen/privcmd: improve performance of MMAPBATCH_V2
Make the IOCTL_PRIVCMD_MMAPBATCH_V2 (and older V1 version) map
multiple frames at a time rather than one at a time, despite the pages
being non-consecutive GFNs.

xen_remap_foreign_mfn_array() is added which maps an array of GFNs
(instead of a consecutive range of GFNs).

Since per-frame errors are returned in an array, privcmd must set the
MMAPBATCH_V1 error bits as part of the "report errors" phase, after
all the frames are mapped.

Migrate times are significantly improved (when using a PV toolstack
domain).  For example, for an idle 12 GiB PV guest:

        Before     After
  real  0m38.179s  0m26.868s
  user  0m15.096s  0m13.652s
  sys   0m28.988s  0m18.732s

Signed-off-by: David Vrabel <david.vrabel@citrix.com>
Reviewed-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
2015-03-16 14:49:15 +00:00
..
interface xen: synchronize include/xen/interface/xen.h with xen 2015-03-16 14:49:13 +00:00
acpi.h xen / ACPI: notify xen when reduced hardware sleep is available 2013-07-31 14:22:35 +02:00
balloon.h xen/balloon: set a mapping for ballooned out pages 2013-08-09 11:23:24 -04:00
events.h xen/events: support threaded irqs for interdomain event channels 2014-09-23 13:36:19 +00:00
features.h
grant_table.h xen/grant-table: add a mechanism to safely unmap pages that are in use 2015-01-28 14:03:14 +00:00
hvc-console.h treewide: use __printf not __attribute__((format(printf,...))) 2011-10-31 17:30:54 -07:00
hvm.h xen: Convert printks to pr_<level> 2013-06-28 11:19:58 -04:00
page.h xen: add page_to_mfn() 2015-01-14 00:22:00 -05:00
platform_pci.h xen/pvhvm: Remove the xen_platform_pci int. 2014-01-03 14:54:53 -05:00
swiotlb-xen.h Merge remote-tracking branch 'stefano/swiotlb-xen-9.1' into stable/for-linus-3.13 2013-11-08 16:10:48 -05:00
tmem.h xen: tmem: enable Xen tmem shim to be built/loaded as a module 2013-04-30 17:04:01 -07:00
xen-ops.h xen/privcmd: improve performance of MMAPBATCH_V2 2015-03-16 14:49:15 +00:00
xen.h xen/pvh/x86: Define what an PVH guest is (v3). 2014-01-06 10:43:58 -05:00
xenbus_dev.h xenbus: Add support for xenbus backend in stub domain 2012-05-21 09:53:18 -04:00
xenbus.h xen: Remove trailing semicolon from xenbus_register_frontend() definition 2015-03-02 10:38:59 +00:00