On Wed, Nov 07, 2012 at 05:48:30AM -0500, Rik van Riel wrote: > On 11/07/2012 05:38 AM, Mel Gorman wrote: > >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. > > Actual PROT_NONE mappings will not generate these NUMA faults > for the reason that the page fault code checks the permission > on the VMA (and will throw a segmentation fault on actual > PROT_NONE mappings), before it ever calls handle_mm_fault. > Updated. Thanks. -- Mel Gorman SUSE Labs -- 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>