Random failures while loading iwmmxt compiled binaries

Rex Ashbaugh rexa at xeratech.com
Wed Jun 23 15:55:40 EDT 2010


You should also be able to modify the kernel to prove/disprove that wr10 is
not being preserved during a task switch coincident with this fault.
Rex

On Wed, Jun 23, 2010 at 10:41 AM, Enrico Scholz <
enrico.scholz at sigma-chemnitz.de> wrote:

> Enrico Scholz <enrico.scholz at sigma-chemnitz.de> writes:
>
> > [ 2280.392473] sed: unhandled page fault (11) at 0x40026200, code 0x017
> > [ 2280.392500] pgd = c7bf0000
> > [ 2280.395191] [40026200] *pgd=87b57031, *pte=00000000, *ppte=00000000
> > [ 2280.401529]
> > [ 2280.408893] Pid: 8831, comm:                  sed
> > [ 2280.418649] CPU: 0    Not tainted  (2.6.31.13 #1)
> > [ 2280.424497] PC is at 0x40016a84
> > [ 2280.427610] LR is at 0x40014b0c
> > [ 2280.430724] pc : [<40016a84>]    lr : [<40014b0c>]    psr: 20000010
> > [ 2280.430733] sp : befff8f8  ip : befff910  fp : befff99c
> > [ 2280.460747] r10: 00000000  r9 : 6474e552  r8 : 00000004
> > [ 2280.466537] r7 : 00000000  r6 : 00000012  r5 : 00000201  r4 : 40026202
> > [ 2280.473452] r3 : befff8f8  r2 : 00000009  r1 : 40026200  r0 : 40026202
> > [ 2280.479937] Flags: nzCv  IRQs on  FIQs on  Mode USER_32  ISA ARM
>  Segment user
> > [ 2280.487354] Control: 0400397f  Table: 87bf0018  DAC: 00000015
>
> I modified kernel to give out iwmmxt regs:
>
>  wr0: 0000000000000009  wr1: 0000000000000000
>  wr2: 0000000000000000  wr3: 0000000000000000
>  wr4: 0000000000000012  wr5: 0000000000000000
>  wr6: 0000000000000000  wr7: 0000000000000000
>  wr8: 0000000000000000  wr9: 0000000000000000
>  wr10: 0000000000000000  wr11: 0000000000000000
>  wr12: 0000000000000000  wr13: 0000000000000000
>  wr14: 0000000000000000  wr15: 0000000000000000
>  wcid:  69052010  wcon:  00000003  wcssf: 00000000  wcasf: 00000000
>  wcgr0: 00000201  wcgr1: 00000104  wcgr2: 00000000  wcgr3: 00000000
>
>
> --> wr10 which should contain 0x1 is 0; the removal of the n'th bit is
>    a noop hence and loop won't terminate.
>
>    wr10 is not modified within the loop
>
>
> >   14ab4:       e3a00001        mov     r0, #1  ; 0x1
> >   14ab8:       e3a01000        mov     r1, #0  ; 0x0
> >   ...
> >   14ac8:       ec41000a        tmcrr   wr10, r0, r1
> >   ...
> >   ...
> >   14b14:       eeda5149        wslldg  wr5, wr10, wcgr1
> >   ...
> >   14b20:       ec510005        tmrrc   r0, r1, wr5
> >   14b24:       e0266000        eor     r6, r6, r0
> >   14b28:       e0277001        eor     r7, r7, r1
>
>
>
> Enrico
>
> _______________________________________________
> linux-arm mailing list
> linux-arm at lists.infradead.org
> http://lists.infradead.org/mailman/listinfo/linux-arm
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.infradead.org/pipermail/linux-arm/attachments/20100623/dd37a54d/attachment.html>


More information about the linux-arm mailing list