[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH v4] xen/gntdev: Use VM_MIXEDMAP instead of VM_IO to avoid NUMA balancing
On 21/11/16 15:56, 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 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@xxxxxxxxx> > Suggested-by: Hugh Dickins <hughd@xxxxxxxxxx> > Signed-off-by: Boris Ostrovsky <boris.ostrovsky@xxxxxxxxxx> Applied to xen/tip.git for-linus-4.10 Juergen > --- > drivers/xen/gntdev.c | 2 +- > 1 files changed, 1 insertions(+), 1 deletions(-) > > diff --git a/drivers/xen/gntdev.c b/drivers/xen/gntdev.c > index bb95212..2ef2b61 100644 > --- a/drivers/xen/gntdev.c > +++ b/drivers/xen/gntdev.c > @@ -1007,7 +1007,7 @@ static int gntdev_mmap(struct file *flip, struct > vm_area_struct *vma) > > vma->vm_ops = &gntdev_vmops; > > - vma->vm_flags |= VM_DONTEXPAND | VM_DONTDUMP | VM_IO; > + vma->vm_flags |= VM_DONTEXPAND | VM_DONTDUMP | VM_MIXEDMAP; > > if (use_ptemod) > vma->vm_flags |= VM_DONTCOPY; > _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx https://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |