[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20140701215156.GA21032@nhori.bos.redhat.com>
Date: Tue, 1 Jul 2014 17:51:56 -0400
From: Naoya Horiguchi <n-horiguchi@...jp.nec.com>
To: Dave Hansen <dave.hansen@...el.com>
Cc: linux-mm@...ck.org, Andrew Morton <akpm@...ux-foundation.org>,
Hugh Dickins <hughd@...gle.com>,
"Kirill A. Shutemov" <kirill@...temov.name>,
Jerome Marchand <jmarchan@...hat.com>,
linux-kernel@...r.kernel.org,
Naoya Horiguchi <nao.horiguchi@...il.com>,
Jet Chen <jet.chen@...el.com>
Subject: Re: [PATCH v4 11/13] mempolicy: apply page table walker on
queue_pages_range()
On Tue, Jul 01, 2014 at 02:00:32PM -0700, Dave Hansen wrote:
> On 07/01/2014 10:07 AM, Naoya Horiguchi wrote:
> > queue_pages_range() does page table walking in its own way now, but there
> > is some code duplicate. This patch applies page table walker to reduce
> > lines of code.
> >
> > queue_pages_range() has to do some precheck to determine whether we really
> > walk over the vma or just skip it. Now we have test_walk() callback in
> > mm_walk for this purpose, so we can do this replacement cleanly.
> > queue_pages_test_walk() depends on not only the current vma but also the
> > previous one, so queue_pages->prev is introduced to remember it.
>
> Hi Naoya,
>
> The previous version of this patch caused a performance regression which
> was reported to you:
>
> http://marc.info/?l=linux-kernel&m=140375975525069&w=2
>
> Has that been dealt with in this version somehow?
I believe so, in previous version we called ->pte_entry() callback
for each pte entries, but in this version I stop doing this and
most of works are done in ->pmd_entry() callback, so the number
of function calls are reduced by about 1/512. And rather than that,
I just cleaned up queue_pages_* without major behavioral changes, so
the visible regression should be solved.
Thanks,
Naoya Horiguchi
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists