Messages in this thread | | | Subject | Re: [PATCH 2/2] powerpc: Print esr register when hitting Program Interrupt | From | Christophe Leroy <> | Date | Thu, 22 Apr 2021 17:29:32 +0200 |
| |
Le 22/04/2021 à 17:10, Xiongwei Song a écrit : > From: Xiongwei Song <sxwjean@gmail.com> > > The esr register has the details of Program Interrupt on BookE/4xx cpus, > printing its value is helpful. > > Signed-off-by: Xiongwei Song <sxwjean@gmail.com> > --- > arch/powerpc/kernel/process.c | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/arch/powerpc/kernel/process.c b/arch/powerpc/kernel/process.c > index 5c3830837f3a..664aecf8ee2e 100644 > --- a/arch/powerpc/kernel/process.c > +++ b/arch/powerpc/kernel/process.c > @@ -1459,6 +1459,7 @@ static bool interrupt_detail_printable(int trap) > case INTERRUPT_MACHINE_CHECK: > case INTERRUPT_DATA_STORAGE: > case INTERRUPT_ALIGNMENT: > + case INTERRUPT_PROGRAM:
With this, it will also print the DSISR on 8xx/6xx so it will print garbage.
8xx/6xx provide the information in SRR1. If you want to proceed, you have to do the same as in ISI: Copy the content of SRR1 into regs->dsisr in the assembly handler in head_book3s_32.S and in the instruction TLB error handler in head_8xx.S
> return true; > default: > return false; >
| |