Commit 67dd5a25 authored by Jeremy Fitzhardinge's avatar Jeremy Fitzhardinge Committed by Linus Torvalds
Browse files

xen: disable split pte locks for now

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 <>
Acked-by: default avatarRik van Riel <>
Acked-by: default avatarHugh Dickins <>
Cc: David Rientjes <>
Cc: Andrew Morton <>
Cc: Andi Kleen <>
Cc: Keir Fraser <>
Cc: Jan Beulich <>
Signed-off-by: default avatarLinus Torvalds <>
parent 9f34073b
......@@ -137,6 +137,7 @@ config SPLIT_PTLOCK_CPUS
default "4096" if ARM && !CPU_CACHE_VIPT
default "4096" if PARISC && !PA20
default "4096" if XEN
default "4"
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment