On Fri, Aug 17, 2012 at 11:12:33AM +0300, Kirill A. Shutemov wrote: > I've used do_huge_pmd_wp_page_fallback() as template for my code. > What's difference between these two code paths? > Why is do_huge_pmd_wp_page_fallback() safe? Good point. do_huge_pmd_wp_page_fallback works only on the current "mm" so it doesn't need the splitting transition, but thinking twice the split_huge_zero_page_pmd also works only on the local "mm" because you're not really splitting the zero page there (you're not affecting other mm). As long as you keep holding the page_table_lock of the "mm" that you're altering your current version is safe. I got mistaken because I'm very used to think at split huge page as something that cannot relay on the page_table_lock, but this is a simpler case that isn't splitting the "page" but only the "pmd" of a single "mm", so you can safely relay on the mm->page_table_lock :). > Looks resonable. I'll update it in next revision. Thanks. Of course the function parameter comments to avoid unnecessary calls of find_vma, weren't related to the above locking issues. -- 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>