[S390] don't call handle_mm_fault() if in an atomic context.
authorHeiko Carstens <heiko.carstens@de.ibm.com>
Tue, 9 Jan 2007 09:18:50 +0000 (10:18 +0100)
committerMartin Schwidefsky <schwidefsky@de.ibm.com>
Tue, 9 Jan 2007 09:18:50 +0000 (10:18 +0100)
commitd8ad075ef60ca33f1bd8e227eed2202108fd6cd8
treeaf7763b3cef733e8b98c72067aa457d74af33f5b
parentde338a3795bbcb3c3d77591f65118cbec776cc39
[S390] don't call handle_mm_fault() if in an atomic context.

There are several places in the futex code where a spin_lock is held
and still uaccesses happen. Deadlocks are avoided by increasing the
preempt count. The pagefault handler will then not take any locks
but will immediately search the fixup tables.

Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
arch/s390/lib/uaccess_pt.c
arch/s390/lib/uaccess_std.c
include/asm-s390/futex.h