linux-stable/drivers/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
..
events xen/events: avoid NULL pointer dereference in dom0 on large machines 2015-03-06 13:16:32 +00:00
xen-pciback xen/pciback: Don't print scary messages when unsupported by hypervisor. 2015-03-16 14:49:14 +00:00
xenbus xenbus: Add proper handling of XS_ERROR from Xenbus for transactions. 2015-02-05 15:04:46 +00:00
xenfs
acpi.c xen / ACPI: notify xen when reduced hardware sleep is available 2013-07-31 14:22:35 +02:00
balloon.c xen: remove scratch frames for ballooned pages and m2p override 2015-01-28 14:03:10 +00:00
biomerge.c
cpu_hotplug.c
dbgp.c xen: Use dev_is_pci() to check whether it is pci device 2014-01-07 09:53:33 -05:00
efi.c efi: dmi: add support for SMBIOS 3.0 UEFI configuration table 2014-11-05 09:03:16 +01:00
evtchn.c xen/evtchn: support more than 4096 ports 2014-01-06 10:07:50 -05:00
fallback.c
features.c
gntalloc.c xen/gntalloc: safely delete grefs in add_grefs() undo path 2014-09-04 13:14:05 +01:00
gntdev.c xen/gntdev: provide find_special_page VMA operation 2015-01-28 14:04:58 +00:00
grant-table.c xen/grant-table: add a mechanism to safely unmap pages that are in use 2015-01-28 14:03:14 +00:00
Kconfig xen: unify foreign GFN map/unmap for auto-xlated physmap guests 2015-03-16 14:49:15 +00:00
Makefile xen: unify foreign GFN map/unmap for auto-xlated physmap guests 2015-03-16 14:49:15 +00:00
manage.c xen/manage: Fix USB interaction issues when resuming 2015-02-06 15:49:09 +00:00
mcelog.c
pci.c xen/pci: Allocate memory for physdev_pci_device_add's optarr 2014-10-23 16:24:02 +01:00
pcpu.c xen: pcpu: Use static attribute groups for sysfs entry 2015-03-16 14:49:13 +00:00
platform-pci.c drivers: xen: Mark function as static in platform-pci.c 2014-02-28 15:26:04 -05:00
preempt.c x86/xen: allow privcmd hypercalls to be preempted 2015-02-23 16:30:24 +00:00
privcmd.c xen/privcmd: improve performance of MMAPBATCH_V2 2015-03-16 14:49:15 +00:00
privcmd.h
swiotlb-xen.c Revert "swiotlb-xen: pass dev_addr to swiotlb_tbl_unmap_single" 2014-12-10 14:58:35 +00:00
sys-hypervisor.c
tmem.c xen/tmem: mark xen_tmem_init() __init 2015-01-23 11:55:24 +00:00
xen-acpi-cpuhotplug.c ACPI: Drop acpi_evaluate_hotplug_ost() and ACPI_HOTPLUG_OST 2014-02-22 00:50:49 +01:00
xen-acpi-memhotplug.c ACPICA: Resources: Provide common part for struct acpi_resource_address structures. 2015-01-26 16:09:56 +01:00
xen-acpi-pad.c ACPI / PAD / xen: use acpi_evaluate_ost() to replace open-coded version 2014-02-21 00:27:47 +01:00
xen-acpi-processor.c xen-acpi-processor: Don't display errors when we get -ENOSYS 2014-05-23 12:34:00 -04:00
xen-balloon.c xen: balloon: Use static attribute groups for sysfs entries 2015-03-16 14:49:13 +00:00
xen-scsiback.c xen-scsiback: mark pvscsi frontend request consumed only after last read 2015-02-23 16:30:25 +00:00
xen-selfballoon.c drivers:xen-selfballoon:reset 'frontswap_inertia_counter' after frontswap_shrink 2014-02-28 15:26:12 -05:00
xen-stub.c
xlate_mmu.c xen/privcmd: improve performance of MMAPBATCH_V2 2015-03-16 14:49:15 +00:00