linux/drivers/xen
Julien Grall 753c09b565 xen/privcmd: Support correctly 64KB page granularity when mapping memory
Commit 5995a68 "xen/privcmd: Add support for Linux 64KB page granularity" did
not go far enough to support 64KB in mmap_batch_fn.

The variable 'nr' is the number of 4KB chunk to map. However, when Linux
is using 64KB page granularity the array of pages (vma->vm_private_data)
contain one page per 64KB. Fix it by incrementing st->index correctly.

Furthermore, st->va is not correctly incremented as PAGE_SIZE !=
XEN_PAGE_SIZE.

Fixes: 5995a68 ("xen/privcmd: Add support for Linux 64KB page granularity")
CC: stable@vger.kernel.org
Reported-by: Feng Kan <fkan@apm.com>
Signed-off-by: Julien Grall <julien.grall@arm.com>
Reviewed-by: Boris Ostrovsky <boris.ostrovsky@oracle.com>
Signed-off-by: Juergen Gross <jgross@suse.com>
2017-06-07 11:23:14 +02:00
..
events xen: Revert commits da72ff5bfc and 72a9b18629 2017-05-02 11:18:05 +02:00
xen-pciback xen: modify xenstore watch event interface 2017-02-09 11:26:49 -05:00
xenbus xenbus: remove transaction holder from list before freeing 2017-04-04 10:11:06 -04:00
xenfs xen: clean up xenbus internal headers 2017-02-09 11:26:49 -05:00
acpi.c xen: rename dom0_op to platform_op 2015-12-21 14:40:55 +00:00
arm-device.c Xen: ARM: Zero reserved fields of xatp before making hypervisor call 2017-01-03 10:06:13 -08:00
balloon.c xen/balloon: decorate PV-only parts with #ifdef CONFIG_XEN_PV 2017-05-02 11:09:56 +02:00
biomerge.c xen/biomerge: Don't allow biovec's to be merged when Linux is not using 4KB pages 2015-10-23 14:20:36 +01:00
cpu_hotplug.c xen: modify xenstore watch event interface 2017-02-09 11:26:49 -05:00
dbgp.c
efi.c xen: Implement EFI reset_system callback 2017-05-02 12:06:50 +02:00
evtchn.c xen/evtchn: use rb_entry() 2016-12-22 10:04:08 +01:00
fallback.c
features.c xen: audit usages of module.h ; remove unnecessary instances 2016-03-21 15:13:32 +00:00
gntalloc.c xen: set error code on failures 2016-12-08 07:53:50 +01:00
gntdev.c drivers, xen: convert grant_map.users from atomic_t to refcount_t 2017-03-13 12:45:18 -04:00
grant-table.c xen/pvh: Initialize grant table for PVH guests 2017-02-07 08:07:01 -05:00
Kconfig ARM64: XEN: Add a function to initialize Xen specific UEFI runtime services 2016-07-06 10:34:46 +01:00
Makefile Xen: ARM: Add support for mapping platform device mmio 2016-07-06 10:34:43 +01:00
manage.c xen: modify xenstore watch event interface 2017-02-09 11:26:49 -05:00
mcelog.c
pci.c
pcpu.c xen: rename dom0_op to platform_op 2015-12-21 14:40:55 +00:00
platform-pci.c xen: Revert commits da72ff5bfc and 72a9b18629 2017-05-02 11:18:05 +02:00
preempt.c xen/preempt: use need_resched() instead of should_resched() 2015-08-20 12:24:14 +01:00
privcmd.c xen/privcmd: Support correctly 64KB page granularity when mapping memory 2017-06-07 11:23:14 +02:00
privcmd.h
swiotlb-xen.c xen/arm,arm64: rename __generic_dma_ops to xen_get_dma_ops 2017-05-02 11:14:47 +02:00
sys-hypervisor.c xen: rename xen_pmu_init() in sys-hypervisor.c 2016-08-24 18:45:25 +01:00
time.c xen: add static initialization of steal_clock op to xen_time_ops 2016-07-26 14:07:06 +01:00
tmem.c cleancache: constify cleancache_ops structure 2016-01-27 09:09:57 -05:00
xen-acpi-cpuhotplug.c xen: rename dom0_op to platform_op 2015-12-21 14:40:55 +00:00
xen-acpi-memhotplug.c
xen-acpi-pad.c xen: rename dom0_op to platform_op 2015-12-21 14:40:55 +00:00
xen-acpi-processor.c xen/acpi: upload PM state from init-domain to Xen 2017-03-23 12:00:02 -04:00
xen-balloon.c xen: modify xenstore watch event interface 2017-02-09 11:26:49 -05:00
xen-scsiback.c target: make close_session optional 2016-05-10 01:19:26 -07:00
xen-selfballoon.c mm, frontswap: convert frontswap_enabled to static key 2016-07-26 16:19:19 -07:00
xen-stub.c
xlate_mmu.c Xen: xlate: Use page_to_xen_pfn instead of page_to_pfn 2016-07-06 10:34:42 +01:00