Messages in this thread | | | Date | Mon, 30 Jun 2014 10:31:05 -0400 | From | Naoya Horiguchi <> | Subject | Re: [PATCH v3 09/13] memcg: apply walk_page_vma() |
| |
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 <n-horiguchi@ah.jp.nec.com> > > 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
| |