On Sun, 3 Feb 2019, john.hubbard@xxxxxxxxx wrote: > Some kernel components (file systems, device drivers) need to access > memory that is specified via process virtual address. For a long time, the > API to achieve that was get_user_pages ("GUP") and its variations. However, > GUP has critical limitations that have been overlooked; in particular, GUP > does not interact correctly with filesystems in all situations. That means > that file-backed memory + GUP is a recipe for potential problems, some of > which have already occurred in the field. It may be worth noting a couple of times in this text that this was designed for anonymous memory and that such use is/was ok. We are talking about a use case here using mmapped access with a regular filesystem that was not initially intended. The mmapping of from the hugepages filesystem is special in that it is not a device that is actually writing things back. Any use with a filesystem that actually writes data back to a medium is something that is broken.