powerpc: Use the TRAP macro whenever comparing a trap number
Trap numbers can have extra bits at the bottom that need to be filtered out. There are a few cases where we don't do that. It's possible that we got lucky but better safe than sorry. Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org> Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
This commit is contained in:
parent
872e2ae4bd
commit
2271db20e4
|
@ -1409,7 +1409,7 @@ void show_regs(struct pt_regs * regs)
|
|||
print_msr_bits(regs->msr);
|
||||
pr_cont(" CR: %08lx XER: %08lx\n", regs->ccr, regs->xer);
|
||||
trap = TRAP(regs);
|
||||
if ((regs->trap != 0xc00) && cpu_has_feature(CPU_FTR_CFAR))
|
||||
if ((TRAP(regs) != 0xc00) && cpu_has_feature(CPU_FTR_CFAR))
|
||||
pr_cont("CFAR: "REG" ", regs->orig_gpr3);
|
||||
if (trap == 0x200 || trap == 0x300 || trap == 0x600)
|
||||
#if defined(CONFIG_4xx) || defined(CONFIG_BOOKE)
|
||||
|
|
|
@ -1564,7 +1564,7 @@ void facility_unavailable_exception(struct pt_regs *regs)
|
|||
u8 status;
|
||||
bool hv;
|
||||
|
||||
hv = (regs->trap == 0xf80);
|
||||
hv = (TRAP(regs) == 0xf80);
|
||||
if (hv)
|
||||
value = mfspr(SPRN_HFSCR);
|
||||
else
|
||||
|
|
|
@ -571,7 +571,7 @@ void bad_page_fault(struct pt_regs *regs, unsigned long address, int sig)
|
|||
|
||||
/* kernel has accessed a bad area */
|
||||
|
||||
switch (regs->trap) {
|
||||
switch (TRAP(regs)) {
|
||||
case 0x300:
|
||||
case 0x380:
|
||||
printk(KERN_ALERT "Unable to handle kernel paging request for "
|
||||
|
|
Loading…
Reference in New Issue