On Wed, Oct 02, 2013 at 04:27:41PM +0200, Jan Kara wrote:
Hello,
In my quest for changing locking around page faults to make things easier for filesystems I found out get_user_pages() users could use a cleanup. The knowledge about necessary locking for get_user_pages() is in tons of places in drivers and quite a few of them actually get it wrong (don't have mmap_sem when calling get_user_pages() or hold mmap_sem when calling copy_from_user() in the surrounding code). Rather often this actually doesn't seem necessary. This patch series converts lots of places to use either get_user_pages_fast() or a new simple wrapper get_user_pages_unlocked() to remove the knowledge of mmap_sem from the drivers. I'm still looking into converting a few remaining drivers (most notably v4l2) which are more complex.
Even looking over the kerneldoc comment next to it I still fail to understand when you'd want to use get_user_pages_fast and when not.
This isn't meant as an argument against your series, but maybe a hint that we'd need further work in this direction.