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

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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.

--
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>


[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]