On 16/11/16 17:02, Boris Ostrovsky wrote: > Commit 9c17d96500f7 ("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 this this flag may cause page allocation > failures with the following stack:
It's not an allocation failure. "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, instead of setting VM_IO use mempolicy that prohibits page > migration (i.e. clear policy's MPOL_F_MOF|MPOL_F_MORON) Reviewed-by: David Vrabel <david.vra...@citrix.com> With the corrected commit message. David