[Avila] showvolt/showtemp crashes on new BSP

Nathan Wharton naw at greptar.com
Tue Apr 22 09:55:27 EDT 2008


I flashed both boards using:
./jtag -p JTAG\ Software\ and\ Images/GW16012\ RevD\ Adapter/0.71\ 
BSP/071_16.BIN

Both boards booted into the stock flash fine.

First the new board:
====================================================================
[root at avila ~]# uname -a
Linux avila 2.6.21.4 #36 Tue Aug 28 11:26:56 UTC 2007 armv5teb unknown
[root at avila ~]# grep rev /proc/cpuinfo
Processor       : XScale-IXP42x Family rev 2 (v5b)
CPU revision    : 2
[root at avila ~]# while true; do showvolt; showtemp; done > /dev/null &
87
[root at avila ~]# while true; do showvolt; showtemp; done > /dev/null &
187
[root at avila ~]#
====================================================================

The old board doing this crashes immediately:
====================================================================
[root at avila ~]# uname -a
Linux avila 2.6.21.4 #36 Tue Aug 28 11:26:56 UTC 2007 armv5teb unknown
[root at avila ~]# grep rev /proc/cpuinfo
Processor       : XScale-IXP42x Family rev 1 (v5b)
CPU revision    : 1
[root at avila ~]# while true; do showvolt; showtemp; done > /dev/null &
145
[root at avila ~]# while true; do showvolt; showtemp; done > /dev/null &
267
[root at avila ~]# <1>Unable to handle kernel NULL pointer dereference at 
virtual a
ddress 00000000
pgd = c3990000
[00000000] *pgd=03983031, *pte=00000000, *ppte=00000000
Internal error: Oops: 817 [#1]
Modules linked in: ixp400_eth ixp400(P)
CPU: 0
PC is at add_wait_queue_exclusive+0x34/0x44
LR is at __down+0x58/0x10c
pc : [<c004fed0>]    lr : [<c0207088>]    Tainted: P
sp : c3981e84  ip : 40000013  fp : c3981e90
r10: bef7bb0b  r9 : c02a3200  r8 : c0e30fa8
r7 : c38050e0  r6 : c0e30fa0  r5 : c3981e94  r4 : 00000002
r3 : c3981ea0  r2 : 00000000  r1 : c3981e94  r0 : c0e30fa8
Flags: nZcv  IRQs off  FIQs on  Mode SVC_32  Segment user
Control: 39FF
Table: 03990000  DAC: 00000015
Process showvolt (pid: 268, stack limit = 0xc3980250)
Stack: (0xc3981e84 to 0xc3982000)
1e80:          c3981ec8 c3981e94 c0207088 c004fea8 00000001 c38050e0 
c0038d6c
1ea0: c0e30fa8 00000000 c0e30e00 c0e30e00 c0e30fa0 c0e34e7c c0e30e7c 
c3981f00
1ec0: c3981ecc c0206fcc c020703c c0e30e14 00000004 c3997000 00000004 
c0e30e00
1ee0: c017fe80 c0e30e14 c3997000 00000005 c0e34e7c c3981f18 c3981f04 
c0180064
1f00: c017fe50 c3df86e0 00000000 c3981f28 c3981f1c c014c244 c0180048 
c3981f60
1f20: c3981f2c c00b21d8 c014c228 c3981f80 c02a092c c3df86fc c38dc2e0 
bef7bb0b
1f40: c3981f80 00000003 c0027bc4 c3980000 000084c8 c3981f7c c3981f64 
c007ba30
1f60: c00b2118 00000000 00000000 c38dc2e0 c3981fa4 c3981f80 c007bdfc 
c007b990
1f80: 00000000 00000000 00000000 bef7bc80 bef7bb30 00008584 00000000 
c3981fa8
1fa0: c0027a20 c007bdbc bef7bc80 bef7bb30 00000003 bef7bb0b 00000005 
bef7bb0b
1fc0: bef7bc80 bef7bb30 00008584 40070ea8 bef7bbb4 00000001 000084c8 
bef7bb2c
1fe0: 4002af88 bef7baf8 0000871c 4002af90 20000010 00000003 ebfe63fe 
e51bc0d0
Backtrace:
[<c004fe9c>] (add_wait_queue_exclusive+0x0/0x44) from [<c0207088>] 
(__down+0x58/
0x10c)
[<c0207030>] (__down+0x0/0x10c) from [<c0206fcc>] (__down_failed+0xc/0x20)
  r8 = C0E30E7C  r7 = C0E34E7C  r6 = C0E30FA0  r5 = C0E30E00
  r4 = C0E30E00
[<c017fe44>] (ad7418_update_device+0x0/0xfc) from [<c0180064>] 
(adc_volt+0x28/0x
5c)
  r7 = C0E34E7C  r6 = 00000005  r5 = C3997000  r4 = C0E30E14
[<c018003c>] (adc_volt+0x0/0x5c) from [<c014c244>] (dev_attr_show+0x28/0x2c)
  r5 = 00000000  r4 = C3DF86E0
[<c014c21c>] (dev_attr_show+0x0/0x2c) from [<c00b21d8>] 
(sysfs_read_file+0xcc/0x
1d0)
[<c00b210c>] (sysfs_read_file+0x0/0x1d0) from [<c007ba30>] 
(vfs_read+0xac/0xd4)
[<c007b984>] (vfs_read+0x0/0xd4) from [<c007bdfc>] (sys_read+0x4c/0x80)
  r6 = C38DC2E0  r5 = 00000000  r4 = 00000000
[<c007bdb0>] (sys_read+0x0/0x80) from [<c0027a20>] 
(ret_fast_syscall+0x0/0x2c)
  r6 = 00008584  r5 = BEF7BB30  r4 = BEF7BC80
Code: e5902004 e281300c e581000c e5803004 (e5823000)
Segmentation fault
Unable to handle kernel NULL pointer dereference at virtual address 00000000
pgd = c35e8000
[00000000] *pgd=035d2031, *pte=00000000, *ppte=00000000
Internal error: Oops: 817 [#2]
Modules linked in: ixp400_eth ixp400(P)
CPU: 0
PC is at 0xc0e30fac
LR is at __wake_up_common+0x38/0x74
pc : [<c0e30fac>]    lr : [<c0037b10>]    Tainted: P
sp : c35e7e78  ip : c0e30fa4  fp : c35e7ea0
r10: 00000003  r9 : 00000000  r8 : 00000000
r7 : c0e30fa8  r6 : 00000000  r5 : 00000001  r4 : 00000000
r3 : 00000000  r2 : 00000000  r1 : c0e30f98  r0 : c0e30fac
Flags: nZcv  IRQs off  FIQs on  Mode SVC_32  Segment user
Control: 39FF
Table: 035E8000  DAC: 00000015
Process showvolt (pid: 266, stack limit = 0xc35e6250)
Stack: (0xc35e7e78 to 0xc35e8000)
7e60:                                                       80000013 
c0e30e00
7e80: c0e30fa0 c0299f38 c0e30e7c c02a3200 bea6eb0b c35e7eb8 c35e7ea4 
c0037b78
7ea0: c0037ae4 00000000 c0e30e00 c35e7ec8 c35e7ebc c002980c c0037b58 
c35e7f00
7ec0: c35e7ecc c020702c c00297f8 00000343 00000003 00000e49 00000001 
c0e30e00
7ee0: c017ff2c c0e30e14 c35cd000 00000005 c0e34e7c c35e7f18 c35e7f04 
c0180064
7f00: c017fe50 c3df86a0 00000000 c35e7f28 c35e7f1c c014c244 c0180048 
c35e7f60
7f20: c35e7f2c c00b21d8 c014c228 c35e7f80 c02a092c c3df86bc c38dc7e0 
bea6eb0b
7f40: c35e7f80 00000003 c0027bc4 c35e6000 000084c8 c35e7f7c c35e7f64 
c007ba30
7f60: c00b2118 00000000 00000000 c38dc7e0 c35e7fa4 c35e7f80 c007bdfc 
c007b990
7f80: 00000000 00000000 00000000 bea6ec80 bea6eb30 00008584 00000000 
c35e7fa8
7fa0: c0027a20 c007bdbc bea6ec80 bea6eb30 00000003 bea6eb0b 00000005 
bea6eb0b
7fc0: bea6ec80 bea6eb30 00008584 40070ea8 bea6ebb4 00000001 000084c8 
bea6eb2c
7fe0: 4002af88 bea6eaf8 0000871c 4002af90 20000010 00000003 00000000 
000014c8
Backtrace:
[<c0037ad8>] (__wake_up_common+0x0/0x74) from [<c0037b78>] 
(__wake_up+0x2c/0x34)
[<c0037b4c>] (__wake_up+0x0/0x34) from [<c002980c>] (__up+0x20/0x24)
  r4 = C0E30E00
[<c00297ec>] (__up+0x0/0x24) from [<c020702c>] (__up_wakeup+0xc/0x10)
[<c017fe44>] (ad7418_update_device+0x0/0xfc) from [<c0180064>] 
(adc_volt+0x28/0x
5c)
  r7 = C0E34E7C  r6 = 00000005  r5 = C35CD000  r4 = C0E30E14
[<c018003c>] (adc_volt+0x0/0x5c) from [<c014c244>] (dev_attr_show+0x28/0x2c)
  r5 = 00000000  r4 = C3DF86A0
[<c014c21c>] (dev_attr_show+0x0/0x2c) from [<c00b21d8>] 
(sysfs_read_file+0xcc/0x
1d0)
[<c00b210c>] (sysfs_read_file+0x0/0x1d0) from [<c007ba30>] 
(vfs_read+0xac/0xd4)
[<c007b984>] (vfs_read+0x0/0xd4) from [<c007bdfc>] (sys_read+0x4c/0x80)
  r6 = C38DC7E0  r5 = 00000000  r4 = 00000000
[<c007bdb0>] (sys_read+0x0/0x80) from [<c0027a20>] 
(ret_fast_syscall+0x0/0x2c)
  r6 = 00008584  r5 = BEA6EB30  r4 = BEA6EC80
Code: c0e30f98 00000001 00000000 c0e30fa8 (c3987ea0)
Segmentation fault
====================================================================

I don't need 2 tight loops running showvolt and showtemp at the same 
time, this was just to reproduce the problem.

Chris Lang wrote:
> Nathan,
> 
> We have tested the new BSP on old boards and this configuration works
> fine... Is the image you are using identical between the 2 boards? How
> can I reproduce the problem? And are the 2 boards the same? (i.e.
> GW2348-4)
> 
> Thanks,
> 



More information about the Avila mailing list