kernel-ark/arch/um
Paolo 'Blaisorblade' Giarrusso 546fe1cbf9 [PATCH] uml: fix hang in TT mode on fault
The current code doesn't handle well general protection faults on the host -
it thinks that cr2 is always the address of a page fault.  While actually, on
general protection faults, that address is not accessible, so we'd better
assume we couldn't satisfy the fault.  Currently instead we think we've fixed
it, so we go back, retry the instruction and fault again endlessly.

This leads to the kernel hanging when doing copy_from_user(dest, -1, ...) in
TT mode, since reading *(-1) causes a GFP, and we don't support kernel
preemption.

Thanks to Luo Xin for testing UML with LTP and reporting the failures he got.

Cc: Luo Xin <luothing@sina.com>
Signed-off-by: Paolo 'Blaisorblade' Giarrusso <blaisorblade@yahoo.it>
Cc: Jeff Dike <jdike@addtoit.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-09-22 22:17:36 -07:00
..
drivers
include [PATCH] strlcat: use for uml umid.c 2005-09-22 22:17:36 -07:00
kernel [PATCH] uml: fix hang in TT mode on fault 2005-09-22 22:17:36 -07:00
os-Linux [PATCH] uml: comment about cast build fix 2005-09-21 16:16:30 -07:00
scripts
sys-i386
sys-ia64
sys-ppc
sys-x86_64
util
config.release
defconfig
Kconfig
Kconfig.char
Kconfig.debug
Kconfig.i386
Kconfig.net
Kconfig.scsi
Kconfig.x86_64
Makefile [PATCH] uml: Fix conflict between libc and ipv6 2005-09-21 16:16:30 -07:00
Makefile-i386
Makefile-ia64
Makefile-os-Linux
Makefile-ppc
Makefile-skas
Makefile-tt
Makefile-x86_64