diff options
author | Nicolas Pitre <nico@cam.org> | 2005-10-28 16:35:46 +0100 |
---|---|---|
committer | Russell King <rmk+kernel@arm.linux.org.uk> | 2005-10-28 16:35:46 +0100 |
commit | a999cb04b4bfb4a2243383f00d5714b8d7163035 (patch) | |
tree | 951b848e666ed00b90c2ac55bce1b2664dd51c27 | |
parent | dd5b295ff880d5a0699a52f84106f16702c298f2 (diff) | |
download | op-kernel-dev-a999cb04b4bfb4a2243383f00d5714b8d7163035.zip op-kernel-dev-a999cb04b4bfb4a2243383f00d5714b8d7163035.tar.gz |
[ARM] 3035/1: RISCOS compat code fix
Patch from Nicolas Pitre
From: Daniel Jacobowitz <dan@debian.org>
> I also fixed a bug that confused me greatly while trying to debug: one
> SIGILL has long been a SIGSEGV because of some broken RISCOS
> compatibility code.
Signed-off-by: Nicolas Pitre <nico@cam.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
-rw-r--r-- | arch/arm/kernel/traps.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/arch/arm/kernel/traps.c b/arch/arm/kernel/traps.c index f6de76e..baa0960 100644 --- a/arch/arm/kernel/traps.c +++ b/arch/arm/kernel/traps.c @@ -345,7 +345,9 @@ static int bad_syscall(int n, struct pt_regs *regs) struct thread_info *thread = current_thread_info(); siginfo_t info; - if (current->personality != PER_LINUX && thread->exec_domain->handler) { + if (current->personality != PER_LINUX && + current->personality != PER_LINUX_32BIT && + thread->exec_domain->handler) { thread->exec_domain->handler(n, regs); return regs->ARM_r0; } |