linux-stable-rt/arch/sh/kernel
SUGIOKA Toshinobu 2afb447f33 sh: fix unaligned and nonexistent address handling
unaligned and nonexistent address causes wrong exception
handling in traps_32.c(handle_unaligned_access).

'handle_unalinged_ins' should return -EFAULT if address error
is fixed up with kernel exception table, otherwise
'handle_unaligned_access' increases already fixed program counter
and then crash.

for example
   ioctl(fd, TCGETA, (struct termio *)-1)
never return and stay in TASK_UNINTERRUPTIBLE state forever
in my kernel.

Signed-off-by: SUGIOKA Toshinobu <sugioka@itonet.co.jp>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2009-01-21 18:35:55 +09:00
..
cpu sh: export the sh7343 JPU to user space 2009-01-21 17:44:26 +09:00
timers
vsyscall
.gitignore
Makefile
Makefile_32
Makefile_64
asm-offsets.c
cpufreq.c
crash_dump.c
debugtraps.S
disassemble.c
early_printk.c
entry-common.S
ftrace.c
gpio.c
head_32.S
head_64.S
idle.c
init_task.c
io.c
io_generic.c
io_trapped.c
irq.c
kgdb.c
kprobes.c
machine_kexec.c
machvec.c
module.c
process_32.c
process_64.c sh: Drop the BKL from sys_execve() on SH-5. 2009-01-21 17:42:55 +09:00
ptrace_32.c
ptrace_64.c
relocate_kernel.S
setup.c
sh_bios.c
sh_ksyms_32.c
sh_ksyms_64.c
signal_32.c
signal_64.c
smp.c
stacktrace.c
sys_sh.c
sys_sh32.c [CVE-2009-0029] Remove __attribute__((weak)) from sys_pipe/sys_pipe2 2009-01-14 14:15:15 +01:00
sys_sh64.c
syscalls_32.S [CVE-2009-0029] Remove __attribute__((weak)) from sys_pipe/sys_pipe2 2009-01-14 14:15:15 +01:00
syscalls_64.S
time_32.c
time_64.c
topology.c
traps.c
traps_32.c sh: fix unaligned and nonexistent address handling 2009-01-21 18:35:55 +09:00
traps_64.c
vmlinux.lds.S
vmlinux_32.lds.S
vmlinux_64.lds.S