Re: Random failures while loading iwmmxt compiled binaries

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]


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@xxxxxxxxxxxxxxxxx> wrote:
Enrico Scholz <enrico.scholz@xxxxxxxxxxxxxxxxx> 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@xxxxxxxxxxxxxxxxxxx
http://lists.infradead.org/mailman/listinfo/linux-arm

_______________________________________________
linux-arm mailing list
linux-arm@xxxxxxxxxxxxxxxxxxx
http://lists.infradead.org/mailman/listinfo/linux-arm

[Linux ARM]     [Linux ARM MSM]     [Linux ARM Kernel]     [Fedora ARM]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]

Add to Google Follow linuxarm on Twitter