diff options
Diffstat (limited to 'arch/arm/kernel/traps.c')
-rw-r--r-- | arch/arm/kernel/traps.c | 8 |
1 files changed, 0 insertions, 8 deletions
diff --git a/arch/arm/kernel/traps.c b/arch/arm/kernel/traps.c index 3647170e9a16..c7cae6b9a4d9 100644 --- a/arch/arm/kernel/traps.c +++ b/arch/arm/kernel/traps.c | |||
@@ -370,18 +370,10 @@ static int call_undef_hook(struct pt_regs *regs, unsigned int instr) | |||
370 | 370 | ||
371 | asmlinkage void __exception do_undefinstr(struct pt_regs *regs) | 371 | asmlinkage void __exception do_undefinstr(struct pt_regs *regs) |
372 | { | 372 | { |
373 | unsigned int correction = thumb_mode(regs) ? 2 : 4; | ||
374 | unsigned int instr; | 373 | unsigned int instr; |
375 | siginfo_t info; | 374 | siginfo_t info; |
376 | void __user *pc; | 375 | void __user *pc; |
377 | 376 | ||
378 | /* | ||
379 | * According to the ARM ARM, PC is 2 or 4 bytes ahead, | ||
380 | * depending whether we're in Thumb mode or not. | ||
381 | * Correct this offset. | ||
382 | */ | ||
383 | regs->ARM_pc -= correction; | ||
384 | |||
385 | pc = (void __user *)instruction_pointer(regs); | 377 | pc = (void __user *)instruction_pointer(regs); |
386 | 378 | ||
387 | if (processor_mode(regs) == SVC_MODE) { | 379 | if (processor_mode(regs) == SVC_MODE) { |