[LSF/MM TOPIC] Page fault locking

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



  Hello,

  so this is a continuation of the topic we spoke about at last LSF/MM
(http://lwn.net/Articles/548098/) about problems filesystems have with
mmap_sem held over page fault. Over the year I have slowly worked through
get_user_pages() users and was converting them to hide mmap_sem locking
inside helpers. Some of the patches were merged, some patches still just
sit in my queue (but most of them is luckily trivial), I've sent out
probably the most complex part - conversion of video4linux2 core - today.

What I'm interested in is:
1) Some feedback regarding the proposed get_vaddr_pfn() helper function.
2) Discuss changes of get_user_pages() function - my idea is that all users
   that need non-trivial locking should use __get_user_pages() (so far
   there are about 8 such callers after my series). get_user_pages() call
   will now grab mmap_sem on its own.
3) Overview remaining call sites of get_user_pages() with non-trivial
   locking - at some places I think we could change the locking so that
   they could use get_user_pages() variant which takes care of grabbing
   mmap_sem. Also I have one place (yes, the only place in the whole
   kernel) in kernel/events/uprobes.c where it's not clear to me how to
   handle situation if fault handler would drop mmap_sem. So I'd like to
   bounce that off the people in the room in case someone comes up with
   anything clever.

								Honza

-- 
Jan Kara <jack@xxxxxxx>
SUSE Labs, CR

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@xxxxxxxxx.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@xxxxxxxxx";> email@xxxxxxxxx </a>




[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]