On Mon, Jun 30, 2014 at 03:20:16PM +0300, Kirill A. Shutemov wrote: > On Fri, Jun 20, 2014 at 04:11:35PM -0400, Naoya Horiguchi wrote: > > pagewalk.c can handle vma in itself, so we don't have to pass vma via > > walk->private. And both of mem_cgroup_count_precharge() and > > mem_cgroup_move_charge() walk over all vmas (not interested in outside vma,) > > so using walk_page_vma() is preferable. > > > > Signed-off-by: Naoya Horiguchi <[email protected]> > > My first thought was to suggest walk_page_range(0, -1, &walk) instead > since we walk over all vmas. But walk_page_range() uses find_vma() on each > iteration, which is expensive. > Is there a reason why we cannot use vma->vm_next in walk_page_range()?
Right, we can use vma->vm_next. The old code uses find_vma() because addr can jump to the next pgd boundary, but that doesn't happen with this patch, so using vma->vm_next is fine. Thanks, Naoya Horiguchi -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/

