On Mon, Mar 14, 2011 at 06:17:31PM +0100, Andrea Arcangeli wrote: > On Mon, Mar 14, 2011 at 09:56:10AM -0700, Linus Torvalds wrote: > > Does mem_cgroup_newpage_charge() even _need_ the mmap_sem at all? And > > if not, why not release the read-lock early? And even if it _does_ > > need it, why not do [...] > About mem_cgroup_newpage_charge I think you're right it won't need the > mmap_sem. Running it under it is sure safe. But if it's not needed we > can move the up_read before the mem_cgroup_newpage_charge like you > suggested. Johannes/Minchan could you confirm the mmap_sem isn't > needed around mem_cgroup_newpage_charge? The mm and new_page are > stable without the mmap_sem, only the vma goes away but the memcg > shouldn't care. We don't care about the vma. It's all about assigning the physical page to the memcg that mm->owner belongs to. It would be the first callsite not holding the mmap_sem, but that is only because all existing sites are fault handlers that don't drop the lock for other reasons. I am not aware of anything that would rely on the lock in there, or would not deserve to break if it did. -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxxx For more info on Linux MM, see: http://www.linux-mm.org/ . Fight unfair telecom internet charges in Canada: sign http://stopthemeter.ca/ Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>