linux/arch/s390/kernel
David Wilder 9c5f225f1a [S390] kprobes: fix instruction length calculation
Placing a kprobe on "bc" instruction (s390/s390x) can cause an oops.
The instruction length is encoded into the first two bits of the s390
instruction. Kprobe is incorrectly computing the instruction length.
The instruction length is used for determining what type of "fix-up" is
needed for conditional branch instruction. The problem can bee seen by
placing a kprobe on a "bc" instruction that will not branch. The
results is that Kprobe incorrectly computes the new instruction
pointer (psw.addr) after single stepping the instruction. The problem
is corrected with this patch.

Signed-off-by: David Wilder <dwilder@us.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
2007-08-22 13:51:49 +02:00
..
Makefile [S390] vmur: fix diag14 exceptions with addresses > 2GB. 2007-08-22 13:51:47 +02:00
asm-offsets.c
audit.c [PATCH] audit signal recipients 2007-05-11 05:38:25 -04:00
base.S
binfmt_elf32.c
bitmap.S
compat_audit.c [PATCH] add SIGNAL syscall class (v3) 2007-05-11 05:38:25 -04:00
compat_exec_domain.c
compat_linux.c
compat_linux.h
compat_ptrace.h
compat_signal.c
compat_wrapper.S [S390] Wire up sys_fallocate. 2007-07-27 12:29:19 +02:00
cpcmd.c
crash.c
debug.c [S390] arch/s390/kernel/debug.c: use mutex instead of semaphore 2007-05-31 17:38:11 +02:00
diag.c [S390] vmur: fix diag14 exceptions with addresses > 2GB. 2007-08-22 13:51:47 +02:00
dis.c [S390] disassembler: fix b2 opcodes like srst, bsg, and others 2007-08-22 13:51:48 +02:00
early.c [S390] sclp: Test facility list before executing a service call. 2007-07-10 11:24:43 +02:00
ebcdic.c
entry.S [S390] Fix IRQ tracing. 2007-07-27 12:29:19 +02:00
entry64.S [S390] Fix IRQ tracing. 2007-07-27 12:29:19 +02:00
head.S [S390] Get rid of new section mismatch warnings. 2007-07-27 12:29:18 +02:00
head31.S
head64.S
init_task.c Remove fs.h from mm.h 2007-07-29 17:09:29 -07:00
ipl.c missing argument in bin_attribute ->read()/->write() 2007-07-15 16:40:52 -07:00
irq.c
kprobes.c [S390] kprobes: fix instruction length calculation 2007-08-22 13:51:49 +02:00
machine_kexec.c
module.c
process.c Remove fs.h from mm.h 2007-07-29 17:09:29 -07:00
ptrace.c PTRACE_POKEDATA consolidation 2007-07-17 10:23:03 -07:00
reipl.S
reipl64.S
relocate_kernel.S
relocate_kernel64.S
s390_ext.c
s390_ksyms.c [S390] vmur: fix diag14 exceptions with addresses > 2GB. 2007-08-22 13:51:47 +02:00
semaphore.c
setup.c [S390] Missing blank when appending cio_ignore kernel parameter 2007-06-19 13:10:18 +02:00
signal.c
smp.c Remove fs.h from mm.h 2007-07-29 17:09:29 -07:00
stacktrace.c [S390] Simplify stack trace. 2007-07-17 13:36:19 +02:00
sys_s390.c Remove fs.h from mm.h 2007-07-29 17:09:29 -07:00
syscalls.S [S390] Wire up sys_fallocate. 2007-07-27 12:29:19 +02:00
time.c [S390] s390: rename CPU_IDLE to S390_CPU_IDLE 2007-07-10 11:24:53 +02:00
traps.c Report that kernel is tainted if there was an OOPS 2007-07-17 10:23:02 -07:00
vmlinux.lds.S [S390] Get rid of new section mismatch warnings. 2007-07-27 12:29:18 +02:00
vtime.c [S390] Convert to smp_call_function_single. 2007-07-27 12:29:17 +02:00