data address causing machine check exception

nbasker at india.tejasnetworks.com nbasker at india.tejasnetworks.com
Fri Sep 20 23:04:59 EST 2002


Hi:

In the sample crash I had sent in the previous mail (attached below),
I deliberately caused a crash by accessing an invalid address
0xfd040000 which is in gpr[3], the first parameter to a
function that caused the crash.

But this invalid address is not in DAR or SRR0 as I expected,
instead I found the following;
srr0 = c0017f70 srr1 = 00001032 dar = 00000000 dsisr = 00000000.

Is it not gauranteed that DAR will have invalid address.

 Machine check in kernel mode.
 Caused by (from msr): regs c46bb4c0 Unknown values in msr
 NIP: CC050014 XER: 40001F7F LR: CC0542FC REGS: c46bb4c0 TRAP: 0200
 MSR: 00009032 EE: 1 PR: 0 FP: 0 ME: 1 IR/DR: 11
 TASK = c46ba000[529] 'test' mm->pgd c59ca000 Last syscall: 54
 last math 00000000
 GPR00: CC0512DC C46BB570 C46BA000 FD040000 00000000 00000000 C46BBDFC 00000000
 GPR08: 00000000 00000000 00000000 C000B794 30026438 1001BA08 100C4490 00000000
 GPR16: 100A9A10 7FFFDBC8 10014F45 00000000 00009032 046BBE80 00000000 C000253C
 GPR24: C000227C 00000000 C4796960 C49F7360 7FFFFD00 CC0E5398 C47A8380 40086A02
 Call backtrace:
 CC0E5398 CC0512DC CC0E5158 C0034640 C00022D0 1000080C 10001AC8
 10000C28 0FE334F8 00000000
 Kernel panic: machine check

Thanks,
Nicholas.

Quoting Wolfgang Denk <wd at denx.de>:

> In message <1032445842.3d89df925ac65 at pop-mail.india.tejasnetworks.com>
> you wrote:
> >
> > In my driver module, there is an invalid memory access
> > that causes a machine check exception.
> ...
> > Since the exception is caused due to load/store related
> > error, I was expecting the dar register to hold the Effective
> > Address of the data, but I find zero.
>
> Why don't you belive that, then? Maybe this _is_ the probem?
> Somebody trying to dereferece NULL?
>
>
> Wolfgang Denk
>
> --
> Software Engineering:  Embedded and Realtime Systems,  Embedded Linux
> Phone: (+49)-8142-4596-87  Fax: (+49)-8142-4596-88  Email: wd at denx.de
> It's a small world, but I wouldn't want to paint it.
>

** Sent via the linuxppc-embedded mail list. See http://lists.linuxppc.org/





More information about the Linuxppc-embedded mailing list