> > On Mon, Feb 11, 2019 at 12:16:40PM -0800, ira.weiny@xxxxxxxxx wrote: > > From: Ira Weiny <ira.weiny@xxxxxxxxx> > > > > NOTE: This series depends on my clean up patch to remove the write > > parameter from gup_fast_permitted()[1] > > > > HFI1 uses get_user_pages_fast() due to it performance advantages. > > Like RDMA, > > HFI1 pages can be held for a significant time. But > > get_user_pages_fast() does not protect against mapping of FS DAX pages. > > If HFI1 can use the _fast varient, can't all the general RDMA stuff use it too? > > What is the guidance on when fast vs not fast should be use? Right now it can't because it holds mmap_sem across the call. Once Shiraz's patches are accepted removing the umem->hugetlb flag I think we can change umem.c. Also, it specifies FOLL_FORCE which can't currently be specified with gup fast. One idea I had was to change get_user_pages_fast() to use gup_flags instead of a single write flag. But that proved to be a very big cosmetic change across a lot of callers so I went this way. Ira > > Jason