2011-09-23 18:55:17     help in debugging application crash

Document created by Aaronwu Employee on Aug 27, 2013
Version 1Show Document
  • View in full screen mode

2011-09-23 18:55:17     help in debugging application crash

Tihomir Culjaga (CROATIA)

Message: 103519   

 

Hello,

 

we have built an application that connects to asterisk manager interface and collects events generated. According to some events, we are able to analyze calls and do all sort of things.... mainly realtime billing.

 

well, while everytihng works as a charm on an x86 machine... but here on blackfin we have a lot of issues. Crosscompile went fine, didn't have any issues. All i had to do was to build libhttpd, libsqlite3 and link it to my main application. All went fine and i can run the application on blackfin.

 

 

I'm running it on an IP04 board with ADSP-BF533 processor.

 

root:/etc> cat /proc/cpuinfo

processor       : 0

vendor_id       : Analog Devices

cpu family      : 0x27a5000

model name      : ADSP-BF533 400(MHz CCLK) 133(MHz SCLK)

stepping        : 5

cpu MHz         : 400.000/133.333333

bogomips        : 798.72

Calibration     : 399360000 loops

cache size      : 16 KB(L1 icache) 32 KB(L1 dcache-wb) 0 KB(L2 cache)

dbank-A/B       : cache/cache

icache setup    : 4 Sub-banks/4 Ways, 32 Lines/Way

dcache setup    : 2 Super-banks/4 Sub-banks/2 Ways, 64 Lines/Way

board name      : IP04/IP08

board memory    : 65536 kB (0x00000000 -> 0x04000000)

kernel memory   : 44028 kB (0x00001000 -> 0x02b00000)

root:/etc>

 

 

 

I'm able to run the application, and asterisk on the stamp, but it is not stable at all... after some time either asterisk or my application crashes without leaving much info. I went through the code several times, tried to debug it but never got a real reason why i get these crashes.

 

 

I could write a lot of other information here right now, but i might just overload everyone with maybe not needed info...

 

please, can anyone help debugging this ?

 

Where do i start?

 

what do i need to look into ?

 

what information do you need in order to be able to help?

 

 

this is my dmesg ..and after a while i get a lot of errors like that.

 

root:/etc> dmesg

014> /* Maybe null pointer? */

<5>DCPLB_FAULT_ADDR: <0x00c3306c> [ cshttpd + 0x6c ]

<5>ICPLB_FAULT_ADDR: <0x00000014> /* Maybe null pointer? */

<5>

<5>PROCESSOR STATE:

<5> R0 : 00000000    R1 : 0000000b    R2 : 0000000a    R3 : 00000002

<5> R4 : 00fdfd64    R5 : 00f81bd8    R6 : 00fdfe20    R7 : 00fdfe60

<5> P0 : 000000be    P1 : 00000014    P2 : 023871f0    P3 : 00000004

<5> P4 : 00f83d94    P5 : 00fdfe10    FP : 00fdf860    SP : 0239bf24

<5> LB0: 002f6181    LT0: 002f6174    LC0: 00000000

<5> LB1: 002f4ec7    LT1: 002f4ec6    LC1: 00000000

<5> B0 : 00000000    L0 : 00000000    M0 : 00000000    I0 : 00000002

<5> B1 : 00000000    L1 : 00000000    M1 : 00000000    I1 : 00f81bd8

<5> B2 : 00000000    L2 : 00000000    M2 : 00000000    I2 : 00000000

<5> B3 : 00000000    L3 : 00000000    M3 : 00000000    I3 : 00000000

<5>A0.w: 00000000   A0.x: 00000000   A1.w: 00000000   A1.x: 00000000

<5>USP : 00fdf84c  ASTAT: 02003004

<5>

<5>Hardware Trace:

<5>   0 Target : <0x0000464c> { _trap_c + 0x0 }

<5>     Source : <0xffa00764> { _exception_to_level5 + 0xb4 }

<5>   1 Target : <0xffa006b0> { _exception_to_level5 + 0x0 }

<5>     Source : <0xffa00608> { _ex_trap_c + 0x5c }

<5>   2 Target : <0xffa005ac> { _ex_trap_c + 0x0 }

<5>     Source : <0xffa00804> { _trap + 0x28 }

<5>   3 Target : <0xffa007dc> { _trap + 0x0 }

<5>     Source : <0x025c328e> [ /persistent/cshttpd/cshttpd + 0x328e ]

<5>   4 Target : <0x025c3286> [ /persistent/cshttpd/cshttpd + 0x3286 ]

<5>     Source : <0x025cc254> [ /persistent/cshttpd/cshttpd + 0xc254 ]

<5>   5 Target : <0x025cc242> [ /persistent/cshttpd/cshttpd + 0xc242 ]

<5>     Source : <0x02a8c02a> [ /lib/libuClibc-0.9.29.so + 0xc02a ]

<5>   6 Target : <0x02a8c02a> [ /lib/libuClibc-0.9.29.so + 0xc02a ]

<5>     Source : <0xffa00cf8> { __common_int_entry + 0xd8 }

<5>   7 Target : <0xffa00c96> { __common_int_entry + 0x76 }

<5>     Source : <0xffa00ebc> { _evt_system_call + 0x64 }

<5>   8 Target : <0xffa00ebc> { _evt_system_call + 0x64 }

<5>     Source : <0xffa0098c> { _system_call + 0xb8 }

<5>   9 Target : <0xffa00988> { _system_call + 0xb4 }

<5>     Source : <0xffa00978> { _system_call + 0xa4 }

<5>  10 Target : <0xffa00972> { _system_call + 0x9e }

<5>     Source : <0xffa00962> { _system_call + 0x8e }

<5>  11 Target : <0xffa0093c> { _system_call + 0x68 }

<5>     Source : <0xffa000e8> { _sys_vfork + 0x10 }

<5>  12 Target : <0xffa000e4> { _sys_vfork + 0xc }

<5>     Source : <0x000017f8> { _bfin_vfork + 0x1c }

<5>  13 Target : <0x000017f4> { _bfin_vfork + 0x18 }

<5>     Source : <0x0000c2ac> { _do_fork + 0x100 }

<5>  14 Target : <0x0000c274> { _do_fork + 0xc8 }

<5>     Source : <0x0012252e> { _wait_for_completion + 0x8e }

<5>  15 Target : <0x001224fe> { _wait_for_completion + 0x5e }

<5>     Source : <0xffa0181e> { _schedule + 0x35e }

<5>Stack from 0239bf04:

<5>        00000000 ffa00768 0017862c 0017862c 00178624 00000002 00fdfd64 00096024

<5>        00000014 00000030 0006002d 00000000 0239c000 00000014 00000014 025cc258

<5>        00000000 02003004 002f4ec7 002f6181 002f4ec6 002f6174 00000000 00000000

<5>        00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000

<5>        00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000

<5>        00000000 00000000 00f81bd8 00000002 00fdf84c 00fdf860 00fdfe10 00f83d94

<5>

<5>Call Trace:

<5>

<5>Undefined instruction

<5> - May be used to emulate instructions that are not defined for

<5>   a particular processor implementation.

<5>Defered Exception context

<5>CURRENT PROCESS:

<5>COMM=asterisk PID=5157

<5>TEXT = 0x02400000-0x024a9e24        DATA = 0x02580e24-0x025af860

<5> BSS = 0x025af860-0x02560000  USER-STACK = 0x0257fea0

<5>

<5>return address: [0x00e44f14]; contents of:

<5>0x00e44ef0:  6f2e  6666  6573  5474  706f  2020  7c7c  3020

<5>0x00e44f00:  0a3b  2009  7620  6c61  6575  204c  3d2b  6520

<5>0x00e44f10:  656c  656d [746e] 6f2e  6666  6573  4c74  6665

<5>0x00e44f20:  2074  7c7c  3020  0a3b  2020  2020  2020  6669

<5>

<5>SEQUENCER STATUS:            Not tainted

<5> SEQSTAT: 00060021  IPEND: 0030  SYSCFG: 0006

<5>  HWERRCAUSE: 0x18

<5>  EXCAUSE   : 0x21

<5> RETE: <0x00000000> /* Maybe null pointer? */

<5> RETN: <0x01578000> /* unknown address */

<5> RETX: <0x00e44f14> [ /usr/lib/asterisk/modules/func_callerid.so + 0xf14 ]

<5> RETS: <0x0244a9b0> [ /bin/asterisk + 0x4a9b0 ]

<5> PC  : <0x00e44f14> [ /usr/lib/asterisk/modules/func_callerid.so + 0xf14 ]

<5>DCPLB_FAULT_ADDR: <0x00e2da94> [ asterisk + 0xa94 ]

<5>ICPLB_FAULT_ADDR: <0x00e44f14> [ /usr/lib/asterisk/modules/func_callerid.so + 0xf14 ]

<5>

<5>PROCESSOR STATE:

<5> R0 : 00b20490    R1 : 015fa158    R2 : 015fa161    R3 : 00000001

<5> R4 : 00b20490    R5 : 015f9154    R6 : 015fa161    R7 : 015fa158

<5> P0 : 0258bd3c    P1 : 00e44f00    P2 : 00e2da90    P3 : 00e2db38

<5> P4 : 00b63654    P5 : 00d5bd44    FP : 015f9114    SP : 01577f24

<5> LB0: 02a9f06b    LT0: 02a9f058    LC0: ffffffff

<5> LB1: 02a9cf7b    LT1: 02a9cf7a    LC1: 00000000

<5> B0 : 00000010    L0 : 00000000    M0 : 00000000    I0 : 02ab5858

<5> B1 : 00000000    L1 : 00000000    M1 : 00000000    I1 : 00000000

<5> B2 : 00000000    L2 : 00000000    M2 : 00000000    I2 : 00000000

<5> B3 : 00000000    L3 : 00000000    M3 : 00000000    I3 : 015fb67c

<5>A0.w: 00000001   A0.x: 00000000   A1.w: 00000001   A1.x: 00000000

<5>USP : 015f90f8  ASTAT: 02000022

<5>

<5>Hardware Trace:

<5>   0 Target : <0x0000464c> { _trap_c + 0x0 }

<5>     Source : <0xffa00764> { _exception_to_level5 + 0xb4 }

<5>   1 Target : <0xffa006b0> { _exception_to_level5 + 0x0 }

<5>     Source : <0xffa00608> { _ex_trap_c + 0x5c }

<5>   2 Target : <0xffa005ac> { _ex_trap_c + 0x0 }

<5>     Source : <0xffa00804> { _trap + 0x28 }

<5>   3 Target : <0xffa007dc> { _trap + 0x0 }

<5>     Source : <0x00e44f02> [ /usr/lib/asterisk/modules/func_callerid.so + 0xf02 ]

<5>   4 Target : <0x00e44f00> [ /usr/lib/asterisk/modules/func_callerid.so + 0xf00 ]

<5>     Source : <0x0244a9ae> [ /bin/asterisk + 0x4a9ae ]

<5>   5 Target : <0x0244a99e> [ /bin/asterisk + 0x4a99e ]

<5>     Source : <0x0244a97c> [ /bin/asterisk + 0x4a97c ]

<5>   6 Target : <0x0244a978> [ /bin/asterisk + 0x4a978 ]

<5>     Source : <0x0244a95c> [ /bin/asterisk + 0x4a95c ]

<5>   7 Target : <0x0244a956> [ /bin/asterisk + 0x4a956 ]

<5>     Source : <0x024474bc> [ /bin/asterisk + 0x474bc ]

<5>   8 Target : <0x024474b4> [ /bin/asterisk + 0x474b4 ]

<5>     Source : <0x026a6086> [ /lib/libpthread-0.9.29.so + 0x6086 ]

<5>   9 Target : <0x026a6080> [ /lib/libpthread-0.9.29.so + 0x6080 ]

<5>     Source : <0x026a615a> [ /lib/libpthread-0.9.29.so + 0x615a ]

<5>  10 Target : <0x026a6158> [ /lib/libpthread-0.9.29.so + 0x6158 ]

<5>     Source : <0x026a850e> [ /lib/libpthread-0.9.29.so + 0x850e ]

<5>  11 Target : <0x026a8502> [ /lib/libpthread-0.9.29.so + 0x8502 ]

<5>     Source : <0x00000428> /* Maybe fixed code section */

<5>  12 Target : <0x00000420> /* Maybe fixed code section */

<5>     Source : <0x026a8500> [ /lib/libpthread-0.9.29.so + 0x8500 ]

<5>  13 Target : <0x026a84fc> [ /lib/libpthread-0.9.29.so + 0x84fc ]

<5>     Source : <0x026a84a4> [ /lib/libpthread-0.9.29.so + 0x84a4 ]

<5>  14 Target : <0x026a8490> [ /lib/libpthread-0.9.29.so + 0x8490 ]

<5>     Source : <0x026a3fb2> [ /lib/libpthread-0.9.29.so + 0x3fb2 ]

<5>  15 Target : <0x026a3faa> [ /lib/libpthread-0.9.29.so + 0x3faa ]

<5>     Source : <0x026a6154> [ /lib/libpthread-0.9.29.so + 0x6154 ]

<5>Stack from 01577f04:

<5>        00e5e338 ffa00768 00178630 00178630 00178624 00000001 00d81118 02a8d068

<5>        00e44f14 00000030 00060021 00000000 01578000 00e44f14 00e44f14 0244a9b0

<5>        00b20490 02000022 02a9cf7b 02a9f06b 02a9cf7a 02a9f058 00000000 ffffffff

<5>        00000001 00000000 00000001 00000000 00000000 00000000 00000000 00000010

<5>        00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000

<5>        015fb67c 00000000 00000000 02ab5858 015f90f8 015f9114 00d5bd44 00b63654

<5>

<5>Call Trace:

<5>

<5>Jump to address 0 - 0x0fff

<5>Defered Exception context

<5>CURRENT PROCESS:

<5>COMM=cshttpd PID=9560

<5>TEXT = 0x01940000-0x0195c8c4        DATA = 0x01a008c4-0x01b04b3c

<5> BSS = 0x01b04b3c-0x01920000  USER-STACK = 0x0193fd30

<5>

<5>return address: [0x00000014]; contents of:

<5>

<5>SEQUENCER STATUS:            Not tainted

<5> SEQSTAT: 0006002d  IPEND: 0030  SYSCFG: 0006

<5>  HWERRCAUSE: 0x18

<5>  EXCAUSE   : 0x2d

<5> RETE: <0x00000000> /* Maybe null pointer? */

<5> RETN: <0x01402000> /* unknown address */

<5> RETX: <0x00000014> /* Maybe null pointer? */

<5> RETS: <0x0194c258> [ /persistent/cshttpd/cshttpd + 0xc258 ]

<5> PC  : <0x00000014> /* Maybe null pointer? */

<5>DCPLB_FAULT_ADDR: <0x00bd906c> [ cshttpd + 0x6c ]

<5>ICPLB_FAULT_ADDR: <0x00000014> /* Maybe null pointer? */

<5>

<5>PROCESSOR STATE:

<5> R0 : 00000000    R1 : 0000000b    R2 : 0000000a    R3 : 00000002

<5> R4 : 0193fd34    R5 : 023a1bd8    R6 : 0193fe00    R7 : 0193fe43

<5> P0 : 000000be    P1 : 00000014    P2 : 023af1f0    P3 : 00000004

<5> P4 : 023a3d94    P5 : 0193fdec    FP : 0193f830    SP : 01401f24

<5> LB0: 002f6181    LT0: 002f6174    LC0: 00000000

<5> LB1: 002f4ec7    LT1: 002f4ec6    LC1: 00000000

<5> B0 : 0000000e    L0 : 00000000    M0 : 0adff5ba    I0 : 00000002

<5> B1 : 0225f454    L1 : 00000000    M1 : 01700408    I1 : 023a1bd8

<5> B2 : 01640041    L2 : 00000000    M2 : 01700388    I2 : 00000000

<5> B3 : 05284ad4    L3 : 00000000    M3 : 017003c8    I3 : 00df0198

<5>A0.w: 00000000   A0.x: 00000000   A1.w: 00000000   A1.x: 00000000

<5>USP : 0193f81c  ASTAT: 02003004

<5>

<5>Hardware Trace:

<5>   0 Target : <0x0000464c> { _trap_c + 0x0 }

<5>     Source : <0xffa00764> { _exception_to_level5 + 0xb4 }

<5>   1 Target : <0xffa006b0> { _exception_to_level5 + 0x0 }

<5>     Source : <0xffa00608> { _ex_trap_c + 0x5c }

<5>   2 Target : <0xffa005ac> { _ex_trap_c + 0x0 }

<5>     Source : <0xffa00804> { _trap + 0x28 }

<5>   3 Target : <0xffa007dc> { _trap + 0x0 }

<5>     Source : <0x0194328e> [ /persistent/cshttpd/cshttpd + 0x328e ]

<5>   4 Target : <0x01943286> [ /persistent/cshttpd/cshttpd + 0x3286 ]

<5>     Source : <0x0194c254> [ /persistent/cshttpd/cshttpd + 0xc254 ]

<5>   5 Target : <0x0194c242> [ /persistent/cshttpd/cshttpd + 0xc242 ]

<5>     Source : <0x02a8c02a> [ /lib/libuClibc-0.9.29.so + 0xc02a ]

<5>   6 Target : <0x02a8c02a> [ /lib/libuClibc-0.9.29.so + 0xc02a ]

<5>     Source : <0xffa00cf8> { __common_int_entry + 0xd8 }

<5>   7 Target : <0xffa00c96> { __common_int_entry + 0x76 }

<5>     Source : <0xffa00ebc> { _evt_system_call + 0x64 }

<5>   8 Target : <0xffa00ebc> { _evt_system_call + 0x64 }

<5>     Source : <0xffa0098c> { _system_call + 0xb8 }

<5>   9 Target : <0xffa00988> { _system_call + 0xb4 }

<5>     Source : <0xffa00978> { _system_call + 0xa4 }

<5>  10 Target : <0xffa00972> { _system_call + 0x9e }

<5>     Source : <0xffa00962> { _system_call + 0x8e }

<5>  11 Target : <0xffa0093c> { _system_call + 0x68 }

<5>     Source : <0xffa000e8> { _sys_vfork + 0x10 }

<5>  12 Target : <0xffa000e4> { _sys_vfork + 0xc }

<5>     Source : <0x000017f8> { _bfin_vfork + 0x1c }

<5>  13 Target : <0x000017f4> { _bfin_vfork + 0x18 }

<5>     Source : <0x0000c2ac> { _do_fork + 0x100 }

<5>  14 Target : <0x0000c274> { _do_fork + 0xc8 }

<5>     Source : <0x0012252e> { _wait_for_completion + 0x8e }

<5>  15 Target : <0x001224fe> { _wait_for_completion + 0x5e }

<5>     Source : <0xffa0181e> { _schedule + 0x35e }

<5>Stack from 01401f04:

<5>        00000000 ffa00768 00178624 00178624 00178624 00000002 0193fd34 02a8c5c2

<5>        00000014 00000030 0006002d 00000000 01402000 00000014 00000014 0194c258

<5>        00000000 02003004 002f4ec7 002f6181 002f4ec6 002f6174 00000000 00000000

<5>        00000000 00000000 00000000 00000000 05284ad4 01640041 0225f454 0000000e

<5>        00000000 00000000 00000000 00000000 017003c8 01700388 01700408 0adff5ba

<5>        00df0198 00000000 023a1bd8 00000002 0193f81c 0193f830 0193fdec 023a3d94

<5>

<5>Call Trace:

<5>

<5>Instruction fetch misaligned address violation

<5> - Attempted misaligned instruction cache fetch. On a misaligned instruction fetch

<5>   exception, the return address provided in RETX is the destination address which is

<5>   misaligned, rather than the address of the offending instruction.

<5>Defered Exception context

<5>CURRENT PROCESS:

<5>COMM=sh PID=9548

<5>TEXT = 0x00300000-0x0034b580        DATA = 0x016d0580-0x016dab7c

<5> BSS = 0x016dab7c-0x018c0000  USER-STACK = 0x018dfed0

<5>

<5>return address: [0x02a8e898]; contents of:

<5>0x02a8e870:  0000  0538  0010  0000  0578  e800  0003  a1bb

<5>0x02a8e880:  e128  0072  00a0  3038  e120  f000  0a07  1006

<5>0x02a8e890:  3007  e801  0000  0538 [0010] e3ff  e8b2  3210

<5>0x02a8e8a0:  43b8  9310  63f8  2ff6  0578  e800  0003  a1bb

<5>

<5>SEQUENCER STATUS:            Not tainted

<5> SEQSTAT: 0006002a  IPEND: 0030  SYSCFG: 0006

<5>  HWERRCAUSE: 0x18

<5>  EXCAUSE   : 0x2a

<5> RETE: <0x00000000> /* Maybe null pointer? */

<5> RETN: <0x01728000> [ sh + 0x0 ]

<5> RETX: <0x02a8e898> [ /lib/libuClibc-0.9.29.so + 0xe898 ]

<5> RETS: <0x6569765f> /* unknown address */

<5> PC  : <0x02a8e898> [ /lib/libuClibc-0.9.29.so + 0xe898 ]

<5>DCPLB_FAULT_ADDR: <0x018dfa08> [ sh + 0x1fa08 ]

<5>ICPLB_FAULT_ADDR: <0x02a8e898> [ /lib/libuClibc-0.9.29.so + 0xe898 ]

<5>

<5>PROCESSOR STATE:

<5> R0 : 0000254d    R1 : 018dfa3c    R2 : 00000000    R3 : 00000000

<5> R4 : 00343da8    R5 : 016da6bc    R6 : 00000000    R7 : 3c292777

<5> P0 : 00000072    P1 : 02a8e840    P2 : 00f711f0    P3 : 01729bd8

<5> P4 : 016d1e34    P5 : 0000254d    FP : 73656e69    SP : 01727f24

<5> LB0: 002f6181    LT0: 002f6174    LC0: 00000000

<5> LB1: 00332fd7    LT1: 00332fd6    LC1: 00000000

<5> B0 : 0000000e    L0 : 00000000    M0 : 0adff5ba    I0 : 016e0384

<5> B1 : 0225f454    L1 : 00000000    M1 : 01700408    I1 : 02ab5918

<5> B2 : 0164809d    L2 : 00000000    M2 : 01700388    I2 : 00000000

<5> B3 : 05284ad4    L3 : 00000000    M3 : 017003c8    I3 : 00df0198

<5>A0.w: 00000000   A0.x: 00000000   A1.w: 00000000   A1.x: 00000000

<5>USP : 018dfa0c  ASTAT: 02002022

<5>

<5>Hardware Trace:

<5>   0 Target : <0x0000464c> { _trap_c + 0x0 }

<5>     Source : <0xffa00764> { _exception_to_level5 + 0xb4 }

<5>   1 Target : <0xffa006b0> { _exception_to_level5 + 0x0 }

<5>     Source : <0xffa00608> { _ex_trap_c + 0x5c }

<5>   2 Target : <0xffa005ac> { _ex_trap_c + 0x0 }

<5>     Source : <0xffa00804> { _trap + 0x28 }

<5>   3 Target : <0xffa007dc> { _trap + 0x0 }

<5>     Source : <0x02a8e896> [ /lib/libuClibc-0.9.29.so + 0xe896 ]

<5>   4 Target : <0x02a8e886> [ /lib/libuClibc-0.9.29.so + 0xe886 ]

<5>     Source : <0xffa00cf8> { __common_int_entry + 0xd8 }

<5>   5 Target : <0xffa00c96> { __common_int_entry + 0x76 }

<5>     Source : <0xffa00ebc> { _evt_system_call + 0x64 }

<5>   6 Target : <0xffa00ebc> { _evt_system_call + 0x64 }

<5>     Source : <0xffa0098c> { _system_call + 0xb8 }

<5>   7 Target : <0xffa00988> { _system_call + 0xb4 }

<5>     Source : <0xffa00978> { _system_call + 0xa4 }

<5>   8 Target : <0xffa00972> { _system_call + 0x9e }

<5>     Source : <0xffa00962> { _system_call + 0x8e }

<5>   9 Target : <0xffa0093c> { _system_call + 0x68 }

<5>     Source : <0x0000f618> { _sys_wait4 + 0x30 }

<5>  10 Target : <0x0000f614> { _sys_wait4 + 0x2c }

<5>     Source : <0x0000f1b0> { _do_wait + 0x560 }

<5>  11 Target : <0x0000f1a6> { _do_wait + 0x556 }

<5>     Source : <0x0000f19e> { _do_wait + 0x54e }

<5>  12 Target : <0x0000f198> { _do_wait + 0x548 }

<5>     Source : <0x0001ce4a> { _remove_wait_queue + 0x36 }

<5>  13 Target : <0x0001ce14> { _remove_wait_queue + 0x0 }

<5>     Source : <0x0000f194> { _do_wait + 0x544 }

<5>  14 Target : <0x0000f176> { _do_wait + 0x526 }

<5>     Source : <0x0000eb14> { _release_task + 0x224 }

<5>  15 Target : <0x0000eb06> { _release_task + 0x216 }

<5>     Source : <0x0001af0a> { _call_rcu + 0x3e }

<5>Stack from 01727f04:

<5>        00000000 ffa00768 00178628 00178628 00178624 00000000 00343da8 02a8d096

<5>        02a8e898 00000030 0006002a 00000000 01728000 02a8e898 02a8e898 6569765f

<5>        0000254d 02002022 00332fd7 002f6181 00332fd6 002f6174 00000000 00000000

<5>        00000000 00000000 00000000 00000000 05284ad4 0164809d 0225f454 0000000e

<5>        00000000 00000000 00000000 00000000 017003c8 01700388 01700408 0adff5ba

<5>        00df0198 00000000 02ab5918 016e0384 018dfa0c 73656e69 0000254d 016d1e34

<5>

<5>Call Trace:

<4>[<0000254d>] _do_rt_sigreturn+0x341/0x854

<4>[<0000254d>] _do_rt_sigreturn+0x341/0x854

QuoteReplyEditDelete

 

 

2011-09-26 01:55:38     Re: help in debugging application crash

Aaron Wu (CHINA)

Message: 103528   

 

  docs.blackfin.uclinux.org/doku.php?id=uclinux-dist:analyzing_traces, check if this will help in your debug. Also the uClinux has something diffrent for application development comparing to the general Linux on X86, mainly about the meomery usage, like you are supposed to use vfork instead of fork. consult   docs.blackfin.uclinux.org/doku.php?id=uclinux-dist:difference_from_linux&s[]=nommu for details.

QuoteReplyEditDelete

 

 

2011-09-26 01:59:43     Re: help in debugging application crash

Sonic Zhang (CHINA)

Message: 103529   

 

Which binary format do you build your application into? FLAT or FDPIC?

 

If it is FLAT, could you please try to enlarge the statck of your application? The default stack in FLAT binary is only 4k bytes. Stack overflow may result in undefined instruction.

QuoteReplyEditDelete

 

 

2011-09-26 02:02:25     Re: help in debugging application crash

Sonic Zhang (CHINA)

Message: 103531   

 

And don't defined large size local variables. Define it as global static or malloc it at run time instead.

QuoteReplyEditDelete

 

 

2011-09-27 04:31:56     Re: help in debugging application crash

Tihomir Culjaga (CROATIA)

Message: 103576   

 

it is supposed to be FDPIC as im using bfin-linux-uclibc-gcc

 

this is how i build my application:

 

 

./configure --host=bfin-linux-uclibc --disable-largefile  CFLAGS="-g -mfdpic -mfast-fp -ffast-math -D__FIXED_PT__ -D__BLACKFIN__ -fno-jump-tables" LDFLAGS="-mfdpic -ldl "

libhttpd-1.4/

libhttpd-1.4/doc/

libhttpd-1.4/doc/FAQ.txt

libhttpd-1.4/doc/libhttpd.pdf

libhttpd-1.4/src/

libhttpd-1.4/src/Makefile

libhttpd-1.4/src/Makefile.tmpl

libhttpd-1.4/src/api.c

libhttpd-1.4/src/config.h.in

libhttpd-1.4/src/ember.c

libhttpd-1.4/src/httpd.h

libhttpd-1.4/src/httpd_priv.h

libhttpd-1.4/src/ip_acl.c

libhttpd-1.4/src/protocol.c

libhttpd-1.4/src/version.c

libhttpd-1.4/HISTORY

libhttpd-1.4/License

libhttpd-1.4/Makefile

libhttpd-1.4/Makefile.tmpl

libhttpd-1.4/README

libhttpd-1.4/Site.mm.in

libhttpd-1.4/configure

libhttpd-1.4/configure.in

libhttpd-1.4/makegen/

libhttpd-1.4/makegen/directory.mm

libhttpd-1.4/makegen/dll_os2.mm

libhttpd-1.4/makegen/install.mm

libhttpd-1.4/makegen/lex.mm

libhttpd-1.4/makegen/libinstall.mm

libhttpd-1.4/makegen/library_os2.mm

libhttpd-1.4/makegen/library_unix.mm

libhttpd-1.4/makegen/makegen

libhttpd-1.4/makegen/makegen.cf

libhttpd-1.4/makegen/makegen.cf.in

libhttpd-1.4/makegen/object.mm

libhttpd-1.4/makegen/program.mm

libhttpd-1.4/makegen/touch.mm

libhttpd-1.4/makegen/yacc.mm

libhttpd-1.4/test/

libhttpd-1.4/test/Makefile

libhttpd-1.4/test/Makefile.tmpl

libhttpd-1.4/test/README

libhttpd-1.4/test/test_httpd.c

/root/cshttpd_working/sources/libhttpd-1.4

patching file src/api.c

patching file src/httpd.h

configure: WARNING: If you wanted to set the --build type, don't use --host.

    If a cross compiler is detected then cross compile mode will be used.

Configuring libhttpd

Do you want to include support for Ember scripts (n) : checking for bfin-linux-uclibc-gcc... bfin-linux-uclibc-gcc

checking for C compiler default output... a.out

checking whether the C compiler works... yes

checking whether we are cross compiling... yes

checking for suffix of executables...

checking for suffix of object files... o

checking whether we are using the GNU C compiler... yes

checking whether bfin-linux-uclibc-gcc accepts -g... yes

checking for bfin-linux-uclibc-gcc option to accept ANSI C... none needed

checking for bfin-linux-uclibc-ranlib... bfin-linux-uclibc-ranlib

checking how to run the C preprocessor... bfin-linux-uclibc-gcc -E

checking for egrep... grep -E

checking for ANSI C header files... yes

checking for sys/types.h... yes

checking for sys/stat.h... yes

checking for stdlib.h... yes

checking for string.h... yes

checking for memory.h... yes

checking for strings.h... yes

checking for inttypes.h... yes

checking for stdint.h... yes

checking for unistd.h... yes

checking for string.h... (cached) yes

checking for strings.h... (cached) yes

checking stdarg.h usability... yes

checking stdarg.h presence... yes

checking for stdarg.h... yes

checking for unistd.h... (cached) yes

checking for main in -lsocket... no

checking for main in -lnsl... yes

configure: creating ./config.status

config.status: creating Site.mm

config.status: creating src/config.h

 

HTTPD Library Configuration complete

 

touch /root/cshttpd_working/.configured

(cd /root/cshttpd_working/sources/libhttpd-1.4; make)

make[1]: Entering directory `/root/cshttpd_working/sources/libhttpd-1.4'

 

Regenerating Makefile.

...

Done.

Done.

make[2]: Entering directory `/root/cshttpd_working/sources/libhttpd-1.4'

 

--> [src] directory

make[3]: Entering directory `/root/cshttpd_working/sources/libhttpd-1.4/src'

 

Regenerating Makefile.

........

Done.

Done.

make[4]: Entering directory `/root/cshttpd_working/sources/libhttpd-1.4/src'

bfin-linux-uclibc-gcc  -I../src -g -I../ -I/usr/local/include  -D_OS_UNIX -I/include -c protocol.c

bfin-linux-uclibc-gcc  -I../src -g -I../ -I/usr/local/include  -D_OS_UNIX -I/include -c api.c

bfin-linux-uclibc-gcc  -I../src -g -I../ -I/usr/local/include  -D_OS_UNIX -I/include -c version.c

bfin-linux-uclibc-gcc  -I../src -g -I../ -I/usr/local/include  -D_OS_UNIX -I/include -c ip_acl.c

bfin-linux-uclibc-gcc  -I../src -g -I../ -I/usr/local/include  -D_OS_UNIX -I/include -c ember.c

ar rc libhttpd.a  protocol.o api.o version.o ip_acl.o ember.o

ranlib libhttpd.a

make[4]: Leaving directory `/root/cshttpd_working/sources/libhttpd-1.4/src'

make[3]: Leaving directory `/root/cshttpd_working/sources/libhttpd-1.4/src'

<-- [src] done     

 

--> [test] directory

make[3]: Entering directory `/root/cshttpd_working/sources/libhttpd-1.4/test'

 

Regenerating Makefile.

......

Done.

Done.

make[4]: Entering directory `/root/cshttpd_working/sources/libhttpd-1.4/test'

bfin-linux-uclibc-gcc  -g -I../src test_httpd.c -o test_httpd -L/usr/local/lib -L../lib -lnsl  ../src/libhttpd.a -L/lib 

test_httpd.c: In function ‘main’:

test_httpd.c:186: warning: incompatible implicit declaration of built-in function ‘exit’

test_httpd.c:206: warning: incompatible implicit declaration of built-in function ‘exit’

make[4]: Leaving directory `/root/cshttpd_working/sources/libhttpd-1.4/test'

make[3]: Leaving directory `/root/cshttpd_working/sources/libhttpd-1.4/test'

<-- [test] done     

make[2]: Leaving directory `/root/cshttpd_working/sources/libhttpd-1.4'

make[1]: Leaving directory `/root/cshttpd_working/sources/libhttpd-1.4'

(cd /root/cshttpd_working; CFLAGS="-g -mfdpic -mfast-fp -ffast-math -D__FIXED_PT__ -D__BLACKFIN__ -fno-jump-tables" LDFLAGS="-mfdpic -ldl " bfin-linux-uclibc-gcc -g -o cshttpd src/*.c -I./sources/libhttpd-1.4/src/ -I /opt/astfin/build_fx08/uClinux-dist-2008R1-RC8/staging/usr/include/ -L./sources/libhttpd-1.4/src/ -L /opt/astfin/build_fx08/uClinux-dist-2008R1-RC8/staging/usr/lib/ -lhttpd -lsqlite3)

/opt/astfin/toolchain/opt/uClinux/bfin-linux-uclibc/bin/bfin-linux-uclibc-strip /root/cshttpd_working/cshttpd

root@subZero:/opt/astfin#

root@subZero:/opt/astfin#

root@subZero:/opt/astfin#

Attachments

    Outcomes