On Tue, Oct 02, 2012 at 05:59:11PM +0100, Will Deacon wrote: > On x86 memory accesses to pages without the ACCESSED flag set result in the > ACCESSED flag being set automatically. With the ARM architecture a page access > fault is raised instead (and it will continue to be raised until the ACCESSED > flag is set for the appropriate PTE/PMD). > > For normal memory pages, handle_pte_fault will call pte_mkyoung (effectively > setting the ACCESSED flag). For transparent huge pages, pmd_mkyoung will only > be called for a write fault. > > This patch ensures that faults on transparent hugepages which do not result > in a CoW update the access flags for the faulting pmd. > > Cc: Andrea Arcangeli <aarcange@xxxxxxxxxx> > Cc: Chris Metcalf <cmetcalf@xxxxxxxxxx> > Signed-off-by: Steve Capper <steve.capper@xxxxxxx> > Signed-off-by: Will Deacon <will.deacon@xxxxxxx> > --- > > v2: - Use pmd_trans_huge_lock to guard against splitting pmds > - Propogate dirty (write) flag to low-level pmd modifier > > include/linux/huge_mm.h | 2 ++ > mm/huge_memory.c | 8 ++++++++ > mm/memory.c | 9 ++++++++- > 3 files changed, 18 insertions(+), 1 deletions(-) Reviewed-by: Andrea Arcangeli <aarcange@xxxxxxxxxx> -- 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>