linux-imx/drivers/xen
Boris Ostrovsky 7c5f94349a xen/gntdev: Use VM_MIXEDMAP instead of VM_IO to avoid NUMA balancing
commit 30faaafdfa upstream.

Commit 9c17d96500 ("xen/gntdev: Grant maps should not be subject to
NUMA balancing") set VM_IO flag to prevent grant maps from being
subjected to NUMA balancing.

It was discovered recently that this flag causes get_user_pages() to
always fail with -EFAULT.

check_vma_flags
__get_user_pages
__get_user_pages_locked
__get_user_pages_unlocked
get_user_pages_fast
iov_iter_get_pages
dio_refill_pages
do_direct_IO
do_blockdev_direct_IO
do_blockdev_direct_IO
ext4_direct_IO_read
generic_file_read_iter
aio_run_iocb

(which can happen if guest's vdisk has direct-io-safe option).

To avoid this let's use VM_MIXEDMAP flag instead --- it prevents
NUMA balancing just as VM_IO does and has no effect on
check_vma_flags().


Reported-by: Olaf Hering <olaf@aepfle.de>
Suggested-by: Hugh Dickins <hughd@google.com>
Signed-off-by: Boris Ostrovsky <boris.ostrovsky@oracle.com>
Acked-by: Hugh Dickins <hughd@google.com>
Tested-by: Olaf Hering <olaf@aepfle.de>
Signed-off-by: Juergen Gross <jgross@suse.com>
Signed-off-by: Jiri Slaby <jslaby@suse.cz>
2017-01-26 17:38:58 +01:00
..
xen-pciback xen-pciback: Add name prefix to global 'permissive' variable 2016-11-28 22:22:51 +01:00
xenbus xen/pvhvm: If xen_platform_pci=0 is set don't blow up (v4). 2014-02-13 13:50:10 -08:00
xenfs xen: Convert printks to pr_<level> 2013-06-28 11:19:58 -04:00
acpi.c xen / ACPI: notify xen when reduced hardware sleep is available 2013-07-31 14:22:35 +02:00
balloon.c xen/balloon: flush persistent kmaps in correct position 2014-04-03 10:32:25 +02:00
biomerge.c
cpu_hotplug.c xen: Convert printks to pr_<level> 2013-06-28 11:19:58 -04:00
dbgp.c
events.c xen/events: Don't move disabled irqs 2016-06-15 09:32:14 +02:00
evtchn.c xen/evtchn: double free on error 2013-08-30 08:44:53 -04:00
fallback.c xen-pciback: notify hypervisor about devices intended to be assigned to guests 2013-03-22 10:20:55 -04:00
features.c
gntalloc.c xen: Convert printks to pr_<level> 2013-06-28 11:19:58 -04:00
gntdev.c xen/gntdev: Use VM_MIXEDMAP instead of VM_IO to avoid NUMA balancing 2017-01-26 17:38:58 +01:00
grant-table.c xen/gnttab: leave lazy MMU mode in the case of a m2p override failure 2013-12-11 22:37:54 -08:00
Kconfig xen/tmem: do not allow XEN_TMEM on ARM64 2013-07-30 13:44:02 -04:00
Makefile xen/arm: enable PV control for ARM 2013-07-29 09:35:11 -04:00
manage.c xen/manage: Fix USB interaction issues when resuming 2015-03-01 23:34:15 +01:00
mcelog.c xen: Convert printks to pr_<level> 2013-06-28 11:19:58 -04:00
pci.c
pcpu.c xen: Convert printks to pr_<level> 2013-06-28 11:19:58 -04:00
platform-pci.c
privcmd.c Xen: Fix retry calls into PRIVCMD_MMAPBATCH*. 2013-08-30 08:44:53 -04:00
privcmd.h
swiotlb-xen.c swiotlb-xen: replace dma_length with sg_dma_len() macro 2013-08-09 11:29:00 -04:00
sys-hypervisor.c
tmem.c Bug-fixes: 2013-07-03 13:12:42 -07:00
xen-acpi-cpuhotplug.c drivers: delete __cpuinit usage from all remaining drivers files 2013-07-14 19:36:59 -04:00
xen-acpi-memhotplug.c xen: Convert printks to pr_<level> 2013-06-28 11:19:58 -04:00
xen-acpi-pad.c xen: Convert printks to pr_<level> 2013-06-28 11:19:58 -04:00
xen-acpi-processor.c xen/acpi: allow xen-acpi-processor driver to load on Xen 4.7 2016-08-19 09:50:52 +02:00
xen-balloon.c xen: Convert printks to pr_<level> 2013-06-28 11:19:58 -04:00
xen-selfballoon.c xen: replace strict_strtoul() with kstrtoul() 2013-08-09 10:59:01 -04:00
xen-stub.c xen/acpi: remove redundant acpi/acpi_drivers.h include 2013-03-11 13:53:02 -04:00
xencomm.c xen: Convert printks to pr_<level> 2013-06-28 11:19:58 -04:00