forked from Minki/linux
5e88353d8b
Signal handling contains a bunch of accesses to individual user space items, which causes an excessive number of STAC and CLAC instructions. Instead, let get/put_user_try ... get/put_user_catch() contain the STAC and CLAC instructions. This means that get/put_user_try no longer nests, and furthermore that it is no longer legal to use user space access functions other than __get/put_user_ex() inside those blocks. However, these macros are x86-specific anyway and are only used in the signal-handling paths; a simple reordering of moving the larger subroutine calls out of the try...catch blocks resolves that problem. Signed-off-by: H. Peter Anvin <hpa@linux.intel.com> Link: http://lkml.kernel.org/r/1348256595-29119-12-git-send-email-hpa@linux.intel.com |
||
---|---|---|
.. | ||
audit.c | ||
ia32_aout.c | ||
ia32_signal.c | ||
ia32entry.S | ||
ipc32.c | ||
Makefile | ||
nosyscall.c | ||
sys_ia32.c | ||
syscall_ia32.c |