Re: [PATCH 08/19] mm: numa: Create basic numa page hintinginfrastructure

From: Mel Gorman
Date: Wed Nov 07 2012 - 05:38:34 EST


On Tue, Nov 06, 2012 at 01:58:26PM -0500, Rik van Riel wrote:
> On 11/06/2012 04:14 AM, Mel Gorman wrote:
> >Note: This patch started as "mm/mpol: Create special PROT_NONE
> > infrastructure" and preserves the basic idea but steals *very*
> > heavily from "autonuma: numa hinting page faults entry points" for
> > the actual fault handlers without the migration parts. The end
> > result is barely recognisable as either patch so all Signed-off
> > and Reviewed-bys are dropped. If Peter, Ingo and Andrea are ok with
> > this version, I will re-add the signed-offs-by to reflect the history.
> >
> >In order to facilitate a lazy -- fault driven -- migration of pages, create
> >a special transient PAGE_NUMA variant, we can then use the 'spurious'
> >protection faults to drive our migrations from.
> >
> >Pages that already had an effective PROT_NONE mapping will not be detected
>
> The patch itself is good, but the changelog needs a little
> fix. While you are defining _PAGE_NUMA to _PAGE_PROTNONE on
> x86, this may be different on other architectures.
>
> Therefore, the changelog should refer to PAGE_NUMA, not
> PROT_NONE.
>

Fair point. I still want to record the point that PROT_NONE will not
generate the faults though. How about this?

In order to facilitate a lazy -- fault driven -- migration of pages, create
a special transient PAGE_NUMA variant, we can then use the 'spurious'
protection faults to drive our migrations from.

The meaning of PAGE_NUMA depends on the architecture but on x86 it is
effectively PROT_NONE. In this case, PROT_NONE mappings will not be detected
to generate these 'spurious' faults for the simple reason that we cannot
distinguish them on their protection bits, see pte_numa(). This isn't
a problem since PROT_NONE (and possible PROT_WRITE with dirty tracking)
aren't used or are rare enough for us to not care about their placement.

> >to generate these 'spurious' faults for the simple reason that we cannot
> >distinguish them on their protection bits, see pte_numa(). This isn't
> >a problem since PROT_NONE (and possible PROT_WRITE with dirty tracking)
> >aren't used or are rare enough for us to not care about their placement.
> >
> >Signed-off-by: Mel Gorman <mgorman@xxxxxxx>
>
> Other than the changelog ...
>
> Reviewed-by: Rik van Riel <riel@xxxxxxxxxx>

Thanks.

--
Mel Gorman
SUSE Labs
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/