diff options
author | Michael Neuling <mikey@neuling.org> | 2017-03-16 04:04:40 +0100 |
---|---|---|
committer | Michael Ellerman <mpe@ellerman.id.au> | 2017-05-01 10:52:58 +0200 |
commit | 8915bcd68b2547c819b8a2a33c098121af9accb2 (patch) | |
tree | be726c45bb19e5af8a5096384409b269b3114f70 /arch/powerpc/xmon | |
parent | powerpc/mm/hash: Fix off-by-one in comment about kernel contexts ids (diff) | |
download | linux-8915bcd68b2547c819b8a2a33c098121af9accb2.tar.xz linux-8915bcd68b2547c819b8a2a33c098121af9accb2.zip |
powerpc/xmon: Teach xmon oops about radix vectors
Currently if we take an oops caused by an 0x380 or 0x480 exception, we get a
print which assumes SLB problems. With radix, these vectors have different
meanings.
This patch updates the oops message to reflect these different meanings.
Signed-off-by: Michael Neuling <mikey@neuling.org>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Diffstat (limited to 'arch/powerpc/xmon')
-rw-r--r-- | arch/powerpc/xmon/xmon.c | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/arch/powerpc/xmon/xmon.c b/arch/powerpc/xmon/xmon.c index da5619847517..f11f65634aab 100644 --- a/arch/powerpc/xmon/xmon.c +++ b/arch/powerpc/xmon/xmon.c @@ -1369,9 +1369,19 @@ const char *getvecname(unsigned long vec) case 0x100: ret = "(System Reset)"; break; case 0x200: ret = "(Machine Check)"; break; case 0x300: ret = "(Data Access)"; break; - case 0x380: ret = "(Data SLB Access)"; break; + case 0x380: + if (radix_enabled()) + ret = "(Data Access Out of Range)"; + else + ret = "(Data SLB Access)"; + break; case 0x400: ret = "(Instruction Access)"; break; - case 0x480: ret = "(Instruction SLB Access)"; break; + case 0x480: + if (radix_enabled()) + ret = "(Instruction Access Out of Range)"; + else + ret = "(Instruction SLB Access)"; + break; case 0x500: ret = "(Hardware Interrupt)"; break; case 0x600: ret = "(Alignment)"; break; case 0x700: ret = "(Program Check)"; break; |