• David Hildenbrand's avatar
    mm/huge_memory: try avoiding write faults when changing PMD protection · c27f479e
    David Hildenbrand authored
    Let's replicate what we have for PTEs in can_change_pte_writable() also
    for PMDs.
    
    While this might look like a pure performance improvement, we'll us this to
    get rid of savedwrite handling in do_huge_pmd_numa_page() next. Place
    do_huge_pmd_numa_page() strategically good for that purpose.
    
    Note that MM_CP_TRY_CHANGE_WRITABLE is currently only set when we come
    via mprotect_fixup().
    
    Link: https://lkml.kernel.org/r/20221108174652.198904-4-david@redhat.comSigned-off-by: default avatarDavid Hildenbrand <david@redhat.com>
    Cc: Andrea Arcangeli <aarcange@redhat.com>
    Cc: Anshuman Khandual <anshuman.khandual@arm.com>
    Cc: Dave Chinner <david@fromorbit.com>
    Cc: Hugh Dickins <hughd@google.com>
    Cc: Linus Torvalds <torvalds@linux-foundation.org>
    Cc: Mel Gorman <mgorman@techsingularity.net>
    Cc: Michael Ellerman <mpe@ellerman.id.au>
    Cc: Mike Rapoport <rppt@kernel.org>
    Cc: Nadav Amit <namit@vmware.com>
    Cc: Nicholas Piggin <npiggin@gmail.com>
    Cc: Peter Xu <peterx@redhat.com>
    Cc: Vlastimil Babka <vbabka@suse.cz>
    Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
    c27f479e
huge_memory.c 88.2 KB