On 2/11/19 2:12 PM, Jason Gunthorpe wrote: > On Mon, Feb 11, 2019 at 01:22:11PM -0800, John Hubbard wrote: > >> The only way that breaks is if longterm pins imply an irreversible action, such >> as blocking and waiting in a way that you can't back out of or get interrupted >> out of. And the design doesn't seem to be going in that direction, right? > > RDMA, vfio, etc will always have 'long term' pins that are > irreversible on demand. It is part of the HW capability. > Yes, I get that about the HW. But I didn't quite phrase it accurately. What I meant was, irreversible from the kernel code's point of view; specifically, the filesystem while in various writeback paths. But anyway, Jan's proposal a bit earlier today [1] is finally sinking into my head--if we actually go that way, and prevent the caller from setting up a problematic gup pin in the first place, then that may make this point sort of moot. > I think the flag is badly named, it is really more of a > GUP_LOCK_PHYSICAL_ADDRESSES flag. > > ie indicate to the FS that is should not attempt to remap physical > memory addresses backing this VMA. If the FS can't do that it must > fail. > Yes. Duration is probably less important than the fact that the page is specially treated. [1] https://lore.kernel.org/r/20190211102402.GF19029@xxxxxxxxxxxxxx thanks, -- John Hubbard NVIDIA