kernel-ark/arch/sh
Stuart MENEFY 5d52013cbb sh: __copy_user function can corrupt the stack in case of exception
The __copy_user function can corrupt the stack in the case of a
non-trivial length of data, and either of the first two move instructions
cause an exception. This is because the fixup for these two instructions
is mapped to the no_pop case, but these instructions execute after the
stack is pushed.

This change creates an explicit NO_POP exception mapping macro, and uses
it for the two instructions executed in the trivial case where no stack
pushes occur.

More information at ST Linux bugzilla:

	https://bugzilla.stlinux.com/show_bug.cgi?id=4824

Signed-off-by: Dylan Reid <dylan_reid@bose.com>
Signed-off-by: Stuart Menefy <stuart.menefy@st.com>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2008-11-13 17:40:30 +09:00
..
boards sh: mach-highlander: Handle SCIF pinmuxing on R7785RP. 2008-10-23 12:35:43 +09:00
boot sh: FTRACE renamed to FUNCTION_TRACER. 2008-10-31 16:20:36 +09:00
cchips sh: Kill off long-dead HD64465 cchip support. 2008-10-28 20:07:44 +09:00
configs sh: Enable NFS root in Migo-R defconfig. 2008-10-31 16:22:31 +09:00
drivers sh: Migrate common board headers to mach-common/. 2008-10-20 13:02:48 +09:00
include sh: Provide a sane valid_phys_addr_range() to prevent TLB reset with PMB. 2008-11-12 12:53:48 +09:00
kernel sh: Fixed the TMU0 reload value on resume 2008-11-13 17:40:30 +09:00
lib sh: __copy_user function can corrupt the stack in case of exception 2008-11-13 17:40:30 +09:00
lib64 sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
math-emu sh: Fix up the math-emu build. 2007-06-11 15:57:42 +09:00
mm sh: Don't factor in PAGE_OFFSET for valid_phys_addr_range() check. 2008-11-13 15:38:02 +09:00
oprofile sh: oprofile: Fix up the SH7750 performance counter name. 2008-10-27 09:51:45 +09:00
tools sh: Kill off long-dead HD64465 cchip support. 2008-10-28 20:07:44 +09:00
Kconfig sh: FTRACE renamed to FUNCTION_TRACER. 2008-10-31 16:20:36 +09:00
Kconfig.cpu sh: Disable big endian for SH-5. 2008-02-14 14:22:10 +09:00
Kconfig.debug sh: Disable 4kB stacks when using PAGE_SIZE_64KB. 2008-09-20 20:16:35 +09:00
Makefile sh: SHmedia ISA tuning fixups. 2008-10-31 15:58:53 +09:00