• Jeremy Fitzhardinge's avatar
    xen: disable split pte locks for now · 67dd5a25
    Jeremy Fitzhardinge authored
    When pinning and unpinning pagetables, we must protect them against
    being used by other CPUs, lest they see the pagetable in an
    intermediate read-only-but-not-pinned state.
    
    When using split pte locks, doing this properly would require taking
    all the pte locks for the pagetable while pinning, but this may overflow
    the PREEMPT_BITS part of the preempt counter if the process has mapped
    more than about 512M of memory.
    
    However, failing to take the pte locks causes write-protect faults when
    the pageout code is trying to clear the Access bit on a pte which is part
    of a freshy created and still being pinned process after fork.
    
    This is a short-term fix until the problem is solved properly.
    Signed-off-by: default avatarJeremy Fitzhardinge <jeremy@xensource.com>
    Acked-by: default avatarRik van Riel <riel@redhat.com>
    Acked-by: default avatarHugh Dickins <hugh@veritas.com>
    Cc: David Rientjes <rientjes@google.com>
    Cc: Andrew Morton <akpm@linux-foundation.org>
    Cc: Andi Kleen <ak@suse.de>
    Cc: Keir Fraser <keir@xensource.com>
    Cc: Jan Beulich <jbeulich@novell.com>
    Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
    67dd5a25
Kconfig 5.29 KB