mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-09-16 07:35:14 +00:00
powerpc/traps: merge unrecoverable_exception() and nonrecoverable_exception()
PPC32 uses nonrecoverable_exception() while PPC64 uses unrecoverable_exception(). Both functions are doing almost the same thing. This patch removes nonrecoverable_exception() Signed-off-by: Christophe Leroy <christophe.leroy@c-s.fr> Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
This commit is contained in:
parent
b9ef7b4b86
commit
51423a9c9b
3 changed files with 4 additions and 13 deletions
|
@ -63,7 +63,6 @@ void program_check_exception(struct pt_regs *regs);
|
||||||
void alignment_exception(struct pt_regs *regs);
|
void alignment_exception(struct pt_regs *regs);
|
||||||
void slb_miss_bad_addr(struct pt_regs *regs);
|
void slb_miss_bad_addr(struct pt_regs *regs);
|
||||||
void StackOverflow(struct pt_regs *regs);
|
void StackOverflow(struct pt_regs *regs);
|
||||||
void nonrecoverable_exception(struct pt_regs *regs);
|
|
||||||
void kernel_fp_unavailable_exception(struct pt_regs *regs);
|
void kernel_fp_unavailable_exception(struct pt_regs *regs);
|
||||||
void altivec_unavailable_exception(struct pt_regs *regs);
|
void altivec_unavailable_exception(struct pt_regs *regs);
|
||||||
void vsx_unavailable_exception(struct pt_regs *regs);
|
void vsx_unavailable_exception(struct pt_regs *regs);
|
||||||
|
|
|
@ -794,7 +794,7 @@ END_FTR_SECTION_IFSET(CPU_FTR_601)
|
||||||
lis r10,MSR_KERNEL@h
|
lis r10,MSR_KERNEL@h
|
||||||
ori r10,r10,MSR_KERNEL@l
|
ori r10,r10,MSR_KERNEL@l
|
||||||
bl transfer_to_handler_full
|
bl transfer_to_handler_full
|
||||||
.long nonrecoverable_exception
|
.long unrecoverable_exception
|
||||||
.long ret_from_except
|
.long ret_from_except
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
@ -1297,7 +1297,7 @@ END_FTR_SECTION_IFSET(CPU_FTR_601)
|
||||||
rlwinm r3,r3,0,0,30
|
rlwinm r3,r3,0,0,30
|
||||||
stw r3,_TRAP(r1)
|
stw r3,_TRAP(r1)
|
||||||
4: addi r3,r1,STACK_FRAME_OVERHEAD
|
4: addi r3,r1,STACK_FRAME_OVERHEAD
|
||||||
bl nonrecoverable_exception
|
bl unrecoverable_exception
|
||||||
/* shouldn't return */
|
/* shouldn't return */
|
||||||
b 4b
|
b 4b
|
||||||
|
|
||||||
|
|
|
@ -1547,14 +1547,6 @@ void StackOverflow(struct pt_regs *regs)
|
||||||
panic("kernel stack overflow");
|
panic("kernel stack overflow");
|
||||||
}
|
}
|
||||||
|
|
||||||
void nonrecoverable_exception(struct pt_regs *regs)
|
|
||||||
{
|
|
||||||
printk(KERN_ERR "Non-recoverable exception at PC=%lx MSR=%lx\n",
|
|
||||||
regs->nip, regs->msr);
|
|
||||||
debugger(regs);
|
|
||||||
die("nonrecoverable exception", regs, SIGKILL);
|
|
||||||
}
|
|
||||||
|
|
||||||
void kernel_fp_unavailable_exception(struct pt_regs *regs)
|
void kernel_fp_unavailable_exception(struct pt_regs *regs)
|
||||||
{
|
{
|
||||||
enum ctx_state prev_state = exception_enter();
|
enum ctx_state prev_state = exception_enter();
|
||||||
|
@ -2090,8 +2082,8 @@ void SPEFloatingPointRoundException(struct pt_regs *regs)
|
||||||
*/
|
*/
|
||||||
void unrecoverable_exception(struct pt_regs *regs)
|
void unrecoverable_exception(struct pt_regs *regs)
|
||||||
{
|
{
|
||||||
printk(KERN_EMERG "Unrecoverable exception %lx at %lx\n",
|
pr_emerg("Unrecoverable exception %lx at %lx (msr=%lx)\n",
|
||||||
regs->trap, regs->nip);
|
regs->trap, regs->nip, regs->msr);
|
||||||
die("Unrecoverable exception", regs, SIGABRT);
|
die("Unrecoverable exception", regs, SIGABRT);
|
||||||
}
|
}
|
||||||
NOKPROBE_SYMBOL(unrecoverable_exception);
|
NOKPROBE_SYMBOL(unrecoverable_exception);
|
||||||
|
|
Loading…
Reference in a new issue