2009-04-09 01:21:18 CPLB miss in pthread
Nicole Otsuka (CHINA)
Message: 72442
hello, i met some problem in my application software
the version of the uclinux is uclinux-dist-trunk-svn-7715
i complied a static mplayer library which can play mp3.
if i call the main function of the lib in a MAIN( void main(){mplayer_main();} ),it works well without no crash.
BUT if i create a thread and call the lib_main in the pthread,it will be crashed.
the error info is:
============size=12288
mplayer -fs -zoom -framedrop /iicore/musics/planetarium.mp3 -msglevel all=-1 -loop 0
MPlayer 1.0rc2-4.1.2 (C) 2000-2007 MPlayer Team
============size=4294967292
Data access CPLB miss
- Used by the MMU to signal a CPLB miss on a data access.
Deferred Exception context
CURRENT PROCESS:
COMM=a.out PID=289
CPU = 0
TEXT = 0x00400000-0x005b22ac DATA = 0x006002ac-0x0066d15c
BSS = 0x0066d15c-0x00700000 USER-STACK = 0x0071feb0
return address: [0x03354678]; contents of:
0x03354650: 3031 180a 304f 67f9 0981 1c25 e51a 003d
0x03354660: 9110 0981 1420 0e0f e51a 001c 142a 0c06
0x03354670: 1807 0000 0000 320e [e590] 0041 9308 e590
0x03354680: 0042 0c00 e697 0041 1809 0000 0000 e121
SEQUENCER STATUS: Not tainted
SEQSTAT: 00060026 IPEND: 0030 SYSCFG: 0006
EXCAUSE : 0x26
interrupts disabled
physical IVG5 asserted : <0xffa00b1c> { _evt_ivhw + 0x0 }
RETE: <0x00000000> { _do_one_initcall + 0xfffff000 }
RETN: <0x00eae000> [ a.out + 0x0 ]
RETX: <0x00000480> /* Maybe fixed code section */
RETS: <0x033546d0> [ /lib/libpthread.so.0 + 0x46d0 ]
PC : <0x03354678> [ /lib/libpthread.so.0 + 0x4678 ]
DCPLB_FAULT_ADDR: <0x32280625> /* kernel dynamic memory */
ICPLB_FAULT_ADDR: <0x03354678> [ /lib/libpthread.so.0 + 0x4678 ]
PROCESSOR STATE:
R0 : 322805e4 R1 : 322805e4 R2 : 00eae937 R3 : 00000800
R4 : 00000800 R5 : 00ed9ef8 R6 : 00eae970 R7 : 00000001
P0 : 0063ee00 P1 : 00eae970 P2 : 322805e4 P3 : 03361528
P4 : 0054f88c P5 : 00ed9e98 FP : 00eae954 SP : 00eadf24
LB0: 03d1f951 LT0: 03d1f94e LC0: 00000000
LB1: 0049f135 LT1: 0049f120 LC1: 00000006
B0 : 00000000 L0 : 00000000 M0 : 00000000 I0 : 00000000
B1 : 00000000 L1 : 00000000 M1 : 00000000 I1 : 00e79be0
B2 : 00000000 L2 : 00000000 M2 : 00000000 I2 : 00000000
B3 : 00000000 L3 : 00000000 M3 : 00000000 I3 : 00000000
A0.w: 1806ef5d A0.x: 00000000 A1.w: 00008fc0 A1.x: 00000000
USP : 00eae940 ASTAT: 02003004
No trace since you do not have CONFIG_DEBUG_BFIN_NO_KERN_HWTRACE enabled
Userspace Stack
Stack info:
SP: [0x00eae940] <0x00eae940> [ a.out + 0x940 ]
Memory from 0x00eae940 to 00eaf000
00eae940:[00e79530] 00e79898 00e79be0 03361528 <004c97a6> 00eae974 <03358b54> 03361528
00eae960: 00000005 000007fc 00000800 00eae9a0 00000007 00eae998 <004da7e8> 00ed9e98
00eae980: 00eb2a87 00000001 00000800 00000002 000000c0 <00002ee0> 00eae9b0 <004d9180>
00eae9a0: 00eb2a88 <0048d5b8> 00ed9ef8 0054f88c 00eb2a88 <0048d74e> 00ed9ef8 00000066
00eae9c0: ffffffff 00eb2a78 00eb2a7c 00eb2a70 00eb2a74 00eb2a68 00eb2a84 00000000
00eae9e0: 00000014 663a7674 6563726f 6e616863 00000000 00000010 0063ee00 00000000
00eaea00: 00000000 00ed9e98 00eae9f8 00000001 0000050c 0000001c 00eae9c8 00eaea34
00eaea20: 000000c0 00000003 00000480 0000ac44 00000002 00ebe07c 6563726f 69647561
00eaea40: ffff006f 00000010 00000000 00000000 00000000 00000010 00eaea48 00000001
00eaea60: 00000000 0000001c 00eaea18 00eaea84 00602a88 00ebcfa8 00000000 00000000
00eaea80: 00000014 623a7674 65666675 7a697372 ff7f0065 00000010 00000000 00000000
00eaeaa0: ffffffff 00000010 00eaea98 00000001 ffffffff 0000001c 00eaea68 00eaead4
00eaeac0: 00602aac 00ebcf98 00000000 00000000 00000010 6d3a7674 6765706a 00d57500
00eaeae0: 00000010 00000000 00000000 00000000 00000010 00eaeae4 00000001 00000000
00eaeb00: 0000001c 00eaeab8 00eaeb20 00602ad0 00ebcf88 00000000 00000000 00000014
00eaeb20: 643a7674 6d696365 6f697461 ffff006e 00000010 00000000 00000000 00000002
00eaeb40: 00000010 00eaeb34 00000001 00000002 0000001c 00eaeb04 00eaeb70 00602af4
00eaeb60: 00ebcf78 00000000 00000000 00000010 713a7674 696c6175 ff007974 00000010
00eaeb80: 00000000 00000000 0000005a 00000010 00eaeb80 00000001 0000005a 0000001c
00eaeba0: 00eaeb54 00eaebbc 00602b18 00ebcf68 00000000 00000000 0000000c 613a7674
00eaebc0: 0061736c 00000010 00000000 00000000 00000000 00000010 00eaebc8 00000001
00eaebe0: 00000000 0000001c 00eaeba0 00eaec04 00602b3c 00ebcf58 00000000 00000000
00eaec00: 00000010 613a7674 69766564 7b006563 00000010 00000000 00000000 00000000
00eaec20: 00000010 00eaec14 00000001 00000000 0000001c 00eaebe8 00eaec50 00602b60
00eaec40: 00ebcf48 00000000 00000000 00000010 613a7674 6f696475 ff006469 00000010
00eaec60: 00000000 00000000 00000000 00000010 00eaec60 00000001 00000000 0000001c
00eaec80: 00eaef04 00552474 00605404 00000000 00000000 00000000 0000001c 00eae11c
00eaeca0: 00eaecb8 00602ba8 00ebcf38 00000000 00000000 00000010 3a727670 65707361
00eaecc0: 00007463 00000010 00000000 00000000 00000000 00000010 00eaecc8 00000001
00eaece0: 00000000 0000001c 00eaec9c 00eaed04 00602bcc 00ebcf28 00000000 00000000
00eaed00: 00000010 3a727670 74617261 00000065 00000010 00000000 00000000 00000000
00eaed20: 00000010 00eaed14 00000001 00000000 0000001c 00eaece8 00eaed50 00602bf0
00eaed40: 00ebcf18 00000000 00000000 00000010 3a727670 79616c61 00007265 00000010
00eaed60: 00000000 00000000 00000000 00000010 00eaed60 00000001 00000000 0000001c
00eaed80: 00eaed34 00eaed9c 00602c14 00ebcf08 00000000 00000000 00000014 3a727670
00eaeda0: 74696261 65746172 00000000 00000010 00000000 00000000 00000000 00000010
00eaedc0: 00eaedb0 00000001 00000000 0000001c 00eaed80 00eaedec 00602c38 00ebcef8
00eaede0: 00000000 00000000 00000010 3a727670 646f6d61 00000065 00000010 00000000
00eaee00: 00000000 00000000 00000010 00eaedfc 00000001 00000000 0000001c 00eaedd0
00eaee20: 00eaee38 00602c5c 00ebcee8 00000000 00000000 00000014 3a727670 74696276
00eaee40: 65746172 00000000 00000010 00000000 00000000 00000000 00000010 00eaee4c
00eaee60: 00000001 00000000 0000001c 00eaee1c 00eaee88 00602c80 00ebced8 00000000
00eaee80: 00000000 00000010 3a727670 646f6d76 00d50065 00000010 00000000 00000000
00eaeea0: 00000000 00000010 00eaee98 00000001 00000000 0000001c 00eaee6c 00eaeed4
00eaeec0: 00602ca4 00ebcec8 00000000 00000000 00000010 3a727670 61657076 00d5006b
00eaeee0: 00000010 00000000 00000000 00000000 00000010 00eaeee4 00000001 00000000
00eaef00: 0000001c 00eaeeb8 00eaef20 00602cc8 00ebceb8 00000000 00000000 0000000c
00eaef20: 3a727670 00746d66 00000010 00000000 00000000 00000000 00000010 00eaef2c
00eaef40: 00000001 00000000 0000001c 00eaf1b0 <00552478> 00605428 00000000 00000000
00eaef60: 00000000 0000001c 00eaec80 00eaef84 00602e0c 00ebcea8 00000000 00000000
00eaef80: 00000014 6f766976 7265763a 6e6f6973 00000000 00000010 00000000 00000000
00eaefa0: ffffffff 00000010 00eaef98 00000001 ffffffff 0000001c 00eaef68 00eaefd4
00eaefc0: 00602e30 00ebce98 00000000 00000000 00000030 6f766976 6f63613a 00636564
00eaefe0: 00000000 00ebebe8 00ebe2e8 00000000 00000000 00000030 00000000 00000000
00eaf000: 00000010
Return addresses in stack:
address : <0x004c97a6> [ /iicore/a.out + 0xc97a6 ]
address : <0x03358b54> [ /lib/libpthread.so.0 + 0x8b54 ]
address : <0x004da7e8> [ /iicore/a.out + 0xda7e8 ]
address : <0x00002ee0> { _do_signal + 0x308 }
address : <0x004d9180> [ /iicore/a.out + 0xd9180 ]
address : <0x0048d5b8> [ /iicore/a.out + 0x8d5b8 ]
address : <0x0048d74e> [ /iicore/a.out + 0x8d74e ]
address : <0x00552478> [ /iicore/a.out + 0x152478 ]
Data access CPLB miss
- Used by the MMU to signal a CPLB miss on a data access.
Deferred Exception context
CURRENT PROCESS:
COMM=a.out PID=289
CPU = 0
TEXT = 0x00400000-0x005b22ac DATA = 0x006002ac-0x0066d15c
BSS = 0x0066d15c-0x00700000 USER-STACK = 0x0071feb0
return address: [0x03354678]; contents of:
0x03354650: 3031 180a 304f 67f9 0981 1c25 e51a 003d
0x03354660: 9110 0981 1420 0e0f e51a 001c 142a 0c06
0x03354670: 1807 0000 0000 320e [e590] 0041 9308 e590
0x03354680: 0042 0c00 e697 0041 1809 0000 0000 e121
SEQUENCER STATUS: Not tainted
SEQSTAT: 00060026 IPEND: 0030 SYSCFG: 0006
EXCAUSE : 0x26
interrupts disabled
physical IVG5 asserted : <0xffa00b1c> { _evt_ivhw + 0x0 }
RETE: <0x00000000> { _do_one_initcall + 0xfffff000 }
RETN: <0x00eae000> [ a.out + 0x0 ]
RETX: <0x00000480> /* Maybe fixed code section */
RETS: <0x033546d0> [ /lib/libpthread.so.0 + 0x46d0 ]
PC : <0x03354678> [ /lib/libpthread.so.0 + 0x4678 ]
DCPLB_FAULT_ADDR: <0x32280625> /* kernel dynamic memory */
ICPLB_FAULT_ADDR: <0x03354678> [ /lib/libpthread.so.0 + 0x4678 ]
PROCESSOR STATE:
R0 : 322805e4 R1 : 322805e4 R2 : 00eae70b R3 : 0000003a
R4 : 00000800 R5 : 00646304 R6 : 00eae744 R7 : 00000001
P0 : 0063ee00 P1 : 00eae744 P2 : 322805e4 P3 : 03361528
P4 : 0064634c P5 : 00ed9e98 FP : 00eae728 SP : 00eadf24
LB0: 03d1f951 LT0: 03d1f94e LC0: 00000000
LB1: 0049f135 LT1: 0049f120 LC1: 00000006
B0 : 00000000 L0 : 00000000 M0 : 00000000 I0 : 00000000
B1 : 00000000 L1 : 00000000 M1 : 00000000 I1 : 00e79be0
B2 : 00000000 L2 : 00000000 M2 : 00000000 I2 : 00000000
B3 : 00000000 L3 : 00000000 M3 : 00000000 I3 : 00000000
A0.w: 1806ef5d A0.x: 00000000 A1.w: 00008fc0 A1.x: 00000000
USP : 00eae714 ASTAT: 02003004
No trace since you do not have CONFIG_DEBUG_BFIN_NO_KERN_HWTRACE enabled
Userspace Stack
Stack info:
SP: [0x00eae714] <0x00eae714> [ a.out + 0x714 ]
FP: (0x00eae938)
Memory from 0x00eae710 to 00eaf000
00eae710:<033546d0>[00eae704] 00000001 00000000 03361528 00eae6d4 00eae748 <03358e74>
00eae730: 03361528 00000005 00000000 00000010 633a7674 00eae764 00eae764 <004d900a>
00eae750: 0063ee00 00000005 00eae788 <0041c71e> 00ed9e98 00eae788 <0041c7c2> 00601c34
00eae770: 0063ee00 000000c8 00602920 00000007 00000000 000000c8 <00eae7b8><0041caf0>
00eae790: 00ed9e98 00601c34 00000000 00eae970 00ed9ef8 00000800 <00eae798> 00000000
00eae7b0: 00000000 0063ee00 00eae954 00000400 00000800 00ed9e98 0054f88c 00000001
00eae7d0: 00000007 00eae7e4 00eae864 6f697461 ffff006e 00000007 00000000 00000001
00eae7f0: 03354678 00000010 00eae7e8 00000001 00000000 0000001c <00eae7b8> 00eae824
00eae810: 00602968 00ebd028 00000000 00000000 0000000c 673a7674 006e6961 00000010
00eae830: 00000000 00000000 ffffffff 00000010 00eae830 00000001 ffffffff 0000001c
00eae850: 00eae808 00eae86c 0060298c 00ebd018 00000000 00000000 00000000 00000000
00eae870: 00000002 00000000 322805e4 322805e4 00eae937 00000800 00000800 00ed9ef8
00eae890: 00eae970 00000001 0063ee00 00eae970 322805e4 03361528 0054f88c 00ed9e98
00eae8b0: 00eae940 1806ef5d 00008fc0 00000000 00000000 02003004 <033546d0> 03354678
00eae8d0: 00000480 00eae954 00000000 00e79be0 00000000 00000000 00000000 00000000
00eae8f0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
00eae910: 00000000 00000000 00000000 00000006 03d1f94e 0049f120 03d1f951 0049f135
00eae930: 00060026 80000000 (00000000)<033546d0> 00e79530 00e79898 00e79be0 03361528
00eae950:<004c97a6> 00eae974 <03358b54> 03361528 00000005 000007fc 00000800 00eae9a0
00eae970: 00000007 00eae998 <004da7e8> 00ed9e98 00eb2a87 00000001 00000800 00000002
00eae990: 000000c0 <00002ee0> 00eae9b0 <004d9180> 00eb2a88 <0048d5b8> 00ed9ef8 0054f88c
00eae9b0: 00eb2a88 <0048d74e> 00ed9ef8 00000066 ffffffff 00eb2a78 00eb2a7c 00eb2a70
00eae9d0: 00eb2a74 00eb2a68 00eb2a84 00000000 00000014 663a7674 6563726f 6e616863
00eae9f0: 00000000 00000010 0063ee00 00000000 00000000 00ed9e98 00eae9f8 00000001
00eaea10: 0000050c 0000001c 00eae9c8 00eaea34 000000c0 00000003 00000480 0000ac44
00eaea30: 00000002 00ebe07c 6563726f 69647561 ffff006f 00000010 00000000 00000000
00eaea50: 00000000 00000010 00eaea48 00000001 00000000 0000001c 00eaea18 00eaea84
00eaea70: 00602a88 00ebcfa8 00000000 00000000 00000014 623a7674 65666675 7a697372
00eaea90: ff7f0065 00000010 00000000 00000000 ffffffff 00000010 00eaea98 00000001
00eaeab0: ffffffff 0000001c 00eaea68 00eaead4 00602aac 00ebcf98 00000000 00000000
00eaead0: 00000010 6d3a7674 6765706a 00d57500 00000010 00000000 00000000 00000000
00eaeaf0: 00000010 00eaeae4 00000001 00000000 0000001c 00eaeab8 00eaeb20 00602ad0
00eaeb10: 00ebcf88 00000000 00000000 00000014 643a7674 6d696365 6f697461 ffff006e
00eaeb30: 00000010 00000000 00000000 00000002 00000010 00eaeb34 00000001 00000002
00eaeb50: 0000001c 00eaeb04 00eaeb70 00602af4 00ebcf78 00000000 00000000 00000010
00eaeb70: 713a7674 696c6175 ff007974 00000010 00000000 00000000 0000005a 00000010
00eaeb90: 00eaeb80 00000001 0000005a 0000001c 00eaeb54 00eaebbc 00602b18 00ebcf68
00eaebb0: 00000000 00000000 0000000c 613a7674 0061736c 00000010 00000000 00000000
00eaebd0: 00000000 00000010 00eaebc8 00000001 00000000 0000001c 00eaeba0 00eaec04
00eaebf0: 00602b3c 00ebcf58 00000000 00000000 00000010 613a7674 69766564 7b006563
00eaec10: 00000010 00000000 00000000 00000000 00000010 00eaec14 00000001 00000000
00eaec30: 0000001c 00eaebe8 00eaec50 00602b60 00ebcf48 00000000 00000000 00000010
00eaec50: 613a7674 6f696475 ff006469 00000010 00000000 00000000 00000000 00000010
00eaec70: 00eaec60 00000001 00000000 0000001c 00eaef04 00552474 00605404 00000000
00eaec90: 00000000 00000000 0000001c 00eae11c 00eaecb8 00602ba8 00ebcf38 00000000
00eaecb0: 00000000 00000010 3a727670 65707361 00007463 00000010 00000000 00000000
00eaecd0: 00000000 00000010 00eaecc8 00000001 00000000 0000001c 00eaec9c 00eaed04
00eaecf0: 00602bcc 00ebcf28 00000000 00000000 00000010 3a727670 74617261 00000065
00eaed10: 00000010 00000000 00000000 00000000 00000010 00eaed14 00000001 00000000
00eaed30: 0000001c 00eaece8 00eaed50 00602bf0 00ebcf18 00000000 00000000 00000010
00eaed50: 3a727670 79616c61 00007265 00000010 00000000 00000000 00000000 00000010
00eaed70: 00eaed60 00000001 00000000 0000001c 00eaed34 00eaed9c 00602c14 00ebcf08
00eaed90: 00000000 00000000 00000014 3a727670 74696261 65746172 00000000 00000010
00eaedb0: 00000000 00000000 00000000 00000010 00eaedb0 00000001 00000000 0000001c
00eaedd0: 00eaed80 00eaedec 00602c38 00ebcef8 00000000 00000000 00000010 3a727670
00eaedf0: 646f6d61 00000065 00000010 00000000 00000000 00000000 00000010 00eaedfc
00eaee10: 00000001 00000000 0000001c 00eaedd0 00eaee38 00602c5c 00ebcee8 00000000
00eaee30: 00000000 00000014 3a727670 74696276 65746172 00000000 00000010 00000000
00eaee50: 00000000 00000000 00000010 00eaee4c 00000001 00000000 0000001c 00eaee1c
00eaee70: 00eaee88 00602c80 00ebced8 00000000 00000000 00000010 3a727670 646f6d76
00eaee90: 00d50065 00000010 00000000 00000000 00000000 00000010 00eaee98 00000001
00eaeeb0: 00000000 0000001c 00eaee6c 00eaeed4 00602ca4 00ebcec8 00000000 00000000
00eaeed0: 00000010 3a727670 61657076 00d5006b 00000010 00000000 00000000 00000000
00eaeef0: 00000010 00eaeee4 00000001 00000000 0000001c 00eaeeb8 00eaef20 00602cc8
00eaef10: 00ebceb8 00000000 00000000 0000000c 3a727670 00746d66 00000010 00000000
00eaef30: 00000000 00000000 00000010 00eaef2c 00000001 00000000 0000001c 00eaf1b0
00eaef50:<00552478> 00605428 00000000 00000000 00000000 0000001c 00eaec80 00eaef84
00eaef70: 00602e0c 00ebcea8 00000000 00000000 00000014 6f766976 7265763a 6e6f6973
00eaef90: 00000000 00000010 00000000 00000000 ffffffff 00000010 00eaef98 00000001
00eaefb0: ffffffff 0000001c 00eaef68 00eaefd4 00602e30 00ebce98 00000000 00000000
00eaefd0: 00000030 6f766976 6f63613a 00636564 00000000 00ebebe8 00ebe2e8 00000000
00eaeff0: 00000000 00000030 00000000 00000000 00000010
Return addresses in stack:
address : <0x033546d0> [ /lib/libpthread.so.0 + 0x46d0 ]
address : <0x03358e74> [ /lib/libpthread.so.0 + 0x8e74 ]
address : <0x004d900a> [ /iicore/a.out + 0xd900a ]
address : <0x0041c71e> [ /iicore/a.out + 0x1c71e ]
address : <0x0041c7c2> [ /iicore/a.out + 0x1c7c2 ]
address : <0x00eae7b8> [ a.out + 0x7b8 ]
address : <0x0041caf0> [ /iicore/a.out + 0x1caf0 ]
address : <0x00eae798> [ a.out + 0x798 ]
address : <0x00eae7b8> [ a.out + 0x7b8 ]
address : <0x033546d0> [ /lib/libpthread.so.0 + 0x46d0 ]
frame 1 : <0x033546d0> [ /lib/libpthread.so.0 + 0x46d0 ]
address : <0x004c97a6> [ /iicore/a.out + 0xc97a6 ]
address : <0x03358b54> [ /lib/libpthread.so.0 + 0x8b54 ]
address : <0x004da7e8> [ /iicore/a.out + 0xda7e8 ]
address : <0x00002ee0> { _do_signal + 0x308 }
address : <0x004d9180> [ /iicore/a.out + 0xd9180 ]
address : <0x0048d5b8> [ /iicore/a.out + 0x8d5b8 ]
address : <0x0048d74e> [ /iicore/a.out + 0x8d74e ]
address : <0x00552478> [ /iicore/a.out + 0x152478 ]
Bus error
btw,this application works well in the uClinux-dist-2008R1.5-RC3 and the error info havent show some NULL POINTER problem,so i think it may not be a bug in my application.
thank you,
Nicole
QuoteReplyEditDelete
2009-04-09 04:09:22 Re: CPLB miss in pthread
Mike Frysinger (UNITED STATES)
Message: 72445
are you smashing the stack ? pthread stacks are pretty tiny by default.
QuoteReplyEditDelete
2009-04-10 02:53:04 Re: CPLB miss in pthread
Nicole Otsuka (CHINA)
Message: 72495
@mike
thank you for your reply
the info in the error print : ============size=xxxx means the vaule of get_pthreadstack (the first print is the size before create pthread,and the other is the size after i have done the create)
and i also tried to set more size like 16MB....but it also crashed...
QuoteReplyEditDelete
2009-04-10 04:49:24 Re: CPLB miss in pthread
Mike Frysinger (UNITED STATES)
Message: 72497
i dont know what "get_pthreadstack" is ... that is not a standard function or you've typo-ed it
at any rate, i think you're misinterpreting the result. there is absolutely no way your thread's stack size is 4294967292 bytes. more likely that is a signed negative value you're interpreting as an unsigned.
if you arent setting the thread stack size manually, then the default will be pretty small.
QuoteReplyEditDelete
2009-04-14 04:37:51 Re: CPLB miss in pthread
Nicole Otsuka (CHINA)
Message: 72633
> int main(){
> int res,status;
> size_t stack_size;
> pthread_attr_init (&Mp3PlayThreadHandle);
> status = pthread_attr_getstacksize (&Mp3PlayThreadHandle,
> &stack_size);
> printf("============size=%u\n",stack_size);
> res = pthread_create(&Mp3PlayThreadHandle,
> NULL,
> Mp3PlayThreadRoutine,
> NULL);
> status = pthread_attr_getstacksize (&Mp3PlayThreadHandle,
> &stack_size);
> printf("============size=%u\n",stack_size);
> while(1) {
> sleep(1);
> }
> }
hi mike,
the error info is printed by the code above and "===size=4294967292" is the second printf.
btw,
i also tried to set 32K(64K,128K,1MB) for the stack before i used pthread_create.Then the result of the second printf is always "4294967292
"
if i set 32K(64K,128K,1MB) for the stack after pthread_create ,the value of the getstacksize is right.BUT the progrom also crashed.
can you give some idea? thank you very much~
Nicole
QuoteReplyEditDelete
2009-04-14 14:22:58 Re: CPLB miss in pthread
Robin Getz (UNITED STATES)
Message: 72648
Nicole:
Can you turn on CONFIG_DEBUG_BFIN_NO_KERN_HWTRACE - and try again?
Thanks
QuoteReplyEditDelete
2009-04-15 01:59:16 Re: CPLB miss in pthread
Yi Li (CHINA)
Message: 72659
Nicole,
What is the result of "turn on CONFIG_DEBUG_BFIN_NO_KERN_HWTRAC", as Robin suggested?
If 1MB stack size cannot work, how about try 2MB, 4MB...
Also you may try to set and check stack size this way:
pthread_attr_init ();
pthread_attr_setstacksize (1MB);
status = pthread_attr_getstacksize (&size); // check before pthread_create()
if (status != 0) .. // check staus
pthread_create();
-Yi
QuoteReplyEditDelete
2009-04-15 23:21:47 Re: CPLB miss in pthread
Nicole Otsuka (CHINA)
Message: 72714
thank you, robin and yi
i turn on the CONFIG_DEBUG_BFIN_NO_KERN_HWTRAC and tried again in the way yi said
but the size of the stack seams to be changed after pthread_create
the handware trace are as follows:
root:/iicore> ./a.out
============size=8388608 /*print stacksize before pthread_create*/
mplayer -fs -zoom -framedrop /iicore/musics/planetarium.mp3 -msglevel all=-1 -loop 0
MPlayer 1.0rc2-4.1.2 (C) 2000-2007 MPlayer Team
============size=4294967294 /*print stacksize after pthread_create*/
Data access CPLB miss
- Used by the MMU to signal a CPLB miss on a data access.
Deferred Exception context
CURRENT PROCESS:
COMM=a.out PID=301
CPU = 0
TEXT = 0x02000000-0x021b22e0 DATA = 0x00f802e0-0x00fed18c
BSS = 0x00fed18c-0x033e0000 USER-STACK = 0x033ffeb0
return address: [0x037a4678]; contents of:
0x037a4650: 3031 180a 304f 67f9 0981 1c25 e51a 003d
0x037a4660: 9110 0981 1420 0e0f e51a 001c 142a 0c06
0x037a4670: 1807 0000 0000 320e [e590] 0041 9308 e590
0x037a4680: 0042 0c00 e697 0041 1809 0000 0000 e121
SEQUENCER STATUS: Not tainted
SEQSTAT: 00062026 IPEND: 0030 SYSCFG: 0006
EXCAUSE : 0x26
interrupts disabled
physical IVG5 asserted : <0xffa00b44> { _evt_ivhw + 0x0 }
RETE: <0x00000000> { _do_one_initcall + 0xfffff000 }
RETN: <0x03b68000> [ a.out + 0x0 ]
RETX: <0x00000480> /* Maybe fixed code section */
RETS: <0x037a46d0> [ /lib/libpthread.so.0 + 0x46d0 ]
PC : <0x037a4678> [ /lib/libpthread.so.0 + 0x4678 ]
DCPLB_FAULT_ADDR: <0x04370198> /* kernel dynamic memory */
ICPLB_FAULT_ADDR: <0x037a4678> [ /lib/libpthread.so.0 + 0x4678 ]
PROCESSOR STATE:
R0 : 04370157 R1 : 04370157 R2 : 03b66937 R3 : 00000800
R4 : 00000800 R5 : 0051de34 R6 : 03b66970 R7 : 00000001
P0 : 00fbee30 P1 : 03b66970 P2 : 04370157 P3 : 037b1528
P4 : 0214f8b8 P5 : 0051ddd4 FP : 03b66954 SP : 03b67f24
LB0: 03d1f951 LT0: 03d1f94e LC0: 00000000
LB1: 0209f14d LT1: 0209f138 LC1: 00000006
B0 : 00000000 L0 : 00000000 M0 : 00000000 I0 : 00000000
B1 : 00000000 L1 : 00000000 M1 : 00000000 I1 : 03b39be0
B2 : 00000000 L2 : 00000000 M2 : 00000000 I2 : 00000000
B3 : 00000000 L3 : 00000000 M3 : 00000000 I3 : 00000000
A0.w: 205547df A0.x: 00000000 A1.w: 000080b2 A1.x: 00000000
USP : 03b66940 ASTAT: 02003004
Hardware Trace:
0 Target : <0x00004a74> { _trap_c + 0x0 }
Source : <0xffa00602> { _exception_to_level5 + 0x9e } CALL pcrel
1 Target : <0xffa00564> { _exception_to_level5 + 0x0 }
Source : <0xffa0042a> { _bfin_return_from_exception + 0x6 } RTX
2 Target : <0xffa00424> { _bfin_return_from_exception + 0x0 }
Source : <0xffa004be> { _ex_trap_c + 0x66 } JUMP.S
3 Target : <0xffa00370> { _ex_dcplb_miss + 0x0 }
Source : <0xffa0068e> { _trap + 0x2a } JUMP (P4)
4 Target : <0xffa00664> { _trap + 0x0 }
Source : <0x037a4676> [ /lib/libpthread.so.0 + 0x4676 ] 0x320e
5 Target : <0x037a466e> [ /lib/libpthread.so.0 + 0x466e ]
Source : <0x037a46be> [ /lib/libpthread.so.0 + 0x46be ] IF !CC JUMP
6 Target : <0x037a46bc> [ /lib/libpthread.so.0 + 0x46bc ]
Source : <0x037a46d4> [ /lib/libpthread.so.0 + 0x46d4 ] JUMP.S
7 Target : <0x037a46d0> [ /lib/libpthread.so.0 + 0x46d0 ]
Source : <0x037a8f24> [ /lib/libpthread.so.0 + 0x8f24 ] RTS
8 Target : <0x037a8f1e> [ /lib/libpthread.so.0 + 0x8f1e ]
Source : <0x037a8f18> [ /lib/libpthread.so.0 + 0x8f18 ] IF !CC JUMP
9 Target : <0x037a8f0e> [ /lib/libpthread.so.0 + 0x8f0e ]
Source : <0x037a8f1c> [ /lib/libpthread.so.0 + 0x8f1c ] JUMP.S
10 Target : <0x037a8f0e> [ /lib/libpthread.so.0 + 0x8f0e ]
Source : <0x037a8f1c> [ /lib/libpthread.so.0 + 0x8f1c ] JUMP.S
11 Target : <0x037a8f1a> [ /lib/libpthread.so.0 + 0x8f1a ]
Source : <0x037a8f12> [ /lib/libpthread.so.0 + 0x8f12 ] IF CC JUMP
12 Target : <0x037a8f0e> [ /lib/libpthread.so.0 + 0x8f0e ]
Source : <0x037a8f1c> [ /lib/libpthread.so.0 + 0x8f1c ] JUMP.S
13 Target : <0x037a8f1a> [ /lib/libpthread.so.0 + 0x8f1a ]
Source : <0x037a8f12> [ /lib/libpthread.so.0 + 0x8f12 ] IF CC JUMP
14 Target : <0x037a8f0e> [ /lib/libpthread.so.0 + 0x8f0e ]
Source : <0x037a8f1c> [ /lib/libpthread.so.0 + 0x8f1c ] JUMP.S
15 Target : <0x037a8f1a> [ /lib/libpthread.so.0 + 0x8f1a ]
Source : <0x037a8f12> [ /lib/libpthread.so.0 + 0x8f12 ] IF CC JUMP
Userspace Stack
Stack info:
SP: [0x03b66940] <0x03b66940> /* kernel dynamic memory */
Memory from 0x03b66940 to 03b67000
03b66940:[03b39530] 03b39898 03b39be0 037b1528 <020c97be> 03b66974 <037a8b54> 037b1528
03b66960: 00000005 000007fc 00000800 03b669a0 00000007 03b66998 <020da800> 0051ddd4
03b66980: 03b6aa87 00000001 00000800 00000002 000000c0 <00002ee0> 03b669b0 <020d9198>
03b669a0: 03b6aa88 <0208d5d0> 0051de34 0214f8b8 03b6aa88 <0208d766> 0051de34 00000066
03b669c0: 87058c06 03b6aa78 03b6aa7c 03b6aa70 03b6aa74 03b6aa68 03b6aa84 44180e42
03b669e0: 8f200f0c 8d07a308 87058c06 85038604 00018402 00000024 00fbee30 00000000
03b66a00: 00000000 0051ddd4 8f200f0c 8d07a308 0000050c 85038604 00018402 00000024
03b66a20: 000000c0 00000003 00000480 0000ac44 00000002 0051f1a4 86048705 84028503
03b66a40: 00000001 00000024 0000c8ec 00087290 0000009a 44140e42 8f1c0f0c 8d06a307
03b66a60: 86048705 84028503 00000001 0000000c ffffffff 7c010001 000e0c23 00000020
03b66a80: 0000ca2c 0008732c 0000006a 8d0c0e42 86028703 0f0c4a01 a3058f14 00000004
03b66aa0: 00000024 0000ca2c 00087398 000000f6 44180e48 8f200f0c 8d07a308 87058c06
03b66ac0: 85038604 00018402 00000020 0000ca2c 00087490 00000064 8d0c0e42 87028c03
03b66ae0: 0f0c4601 a3058f14 00000004 00000024 0000ca2c 000874f4 00000308 46180e42
03b66b00: 8f200f0c 8d07a308 87058c06 85038604 00018402 0000000c ffffffff 7c010001
03b66b20: 000e0c23 0000001c 0000cad4 000877fc 0000005e 44080e42 8f100f0c 8d03a304
03b66b40: 00018c02 00000024 0000cad4 0008785c 00000274 44180e44 8f200f0c 8d07a308
03b66b60: 87058c06 85038604 00018402 00000020 0000cad4 00087ad0 0000005e 8d100e42
03b66b80: 87038c04 46018602 8f180f0c 0005a306 00000024 0000cad4 00087b30 000001be
03b66ba0: 8d180e42 87058c06 85038604 4c018402 8f200f0c 0007a308 0000000c ffffffff
03b66bc0: 7c010001 000e0c23 00000014 0000cb78 00087cf0 00000036 080f0c48 01a3028f
03b66be0: 00000014 0000cb78 00087d28 00000036 080f0c48 01a3028f 00000014 0000cb78
03b66c00: 00087d60 00000014 080f0c46 01a3028f 00000014 0000cb78 00087d74 00000020
03b66c20: 080f0c46 01a3028f 00000024 0000cb78 00087d94 00000120 8d180e42 87058c06
03b66c40: 85038604 46018402 8f200f0c 0007a308 00000020 0000cb78 00087eb4 0000005c
03b66c60: 44100e44 8f180f0c 8d05a306 86038704 00018502 00000024 0000cb78 00087f10
03b66c80: 00000090 44180e42 8f200f0c 8d07a308 87058c06 85038604 00018402 0000001c
03b66ca0: 0000cb78 00087fa0 0000002c 44040e42 8f0c0f0c 8702a303 00000001 0000001c
03b66cc0: 0000cb78 00087fcc 0000002e 44040e42 8f0c0f0c 8702a303 00000001 0000001c
03b66ce0: 0000cb78 00087ffc 0000006c 44080e42 8f100f0c 8703a304 00018602 00000020
03b66d00: 0000cb78 00088068 0000008e 8d100e42 87038c04 46018602 8f180f0c 0005a306
03b66d20: 00000024 0000cb78 000880f8 00000050 44140e44 8f1c0f0c 8d06a307 87048c05
03b66d40: 85028603 00000001 00000024 0000cb78 00088148 000000b8 44180e44 8f200f0c
03b66d60: 8d07a308 87058c06 85038604 00018402 00000020 0000cb78 00088200 000000b2
03b66d80: 44100e42 8f180f0c 8d05a306 86038704 00018502 00000024 0000cb78 000882b4
03b66da0: 000000b2 8d180e42 87058c06 85038604 46018402 8f200f0c 0007a308 0000001c
03b66dc0: 0000cb78 00088368 00000034 8d080e42 46018702 8f100f0c 0003a304 0000001c
03b66de0: 0000cb78 0008839c 00000042 44080e46 8f100f0c 8d03a304 00018702 0000001c
03b66e00: 0000cb78 000883e0 00000026 44080e42 8f100f0c 8703a304 00018602 00000024
03b66e20: 0000cb78 00088408 000000c0 44180e44 8f200f0c 8d07a308 87058c06 85038604
03b66e40: 00018402 00000020 0000cb78 000884c8 000000ae 8d100e42 87038c04 46018602
03b66e60: 8f180f0c 0005a306 00000024 0000cb78 00088578 000001b2 44180e42 8f200f0c
03b66e80: 8d07a308 87058c06 85038604 00018402 00000020 0000cb78 0008872c 0000008c
03b66ea0: 8d100e42 86038704 4c018502 8f180f0c 0005a306 00000020 0000cb78 000887b8
03b66ec0: 000000ae 8d100e42 86038704 4c018502 8f180f0c 0005a306 00000024 0000cb78
03b66ee0: 00088868 00000096 8d180e42 87058c06 85038604 4a018402 8f200f0c 0007a308
03b66f00: 00000024 0000cb78 00088900 0000011a 44180e42 8f200f0c 8d07a308 87058c06
03b66f20: 85038604 00018402 00000024 0000cb78 00088a1c 00000124 44180e44 8f200f0c
03b66f40: 8d07a308 87058c06 85038604 00018402 00000020 0000cb78 00088b40 000000d4
03b66f60: 8d100e42 87038c04 46018602 8f180f0c 0005a306 00000024 0000cb78 00088c14
03b66f80: 0000018e 8d180e42 87058c06 85038604 46018402 8f200f0c 0007a308 0000001c
03b66fa0: 0000cb78 00088da4 0000001c 44080e42 8f100f0c 8703a304 00018602 00000020
03b66fc0: 0000cb78 <00088dc0> 00000142 8d100e42 87038c04 46018602 8f180f0c 0005a306
03b66fe0: 00000024 0000cb78 00088f04 000003d2 44180e42 8f200f0c 8d07a308 87058c06
03b67000: 85038604
Return addresses in stack:
address : <0x020c97be> [ /iicore/a.out + 0xc97be ]
address : <0x037a8b54> [ /lib/libpthread.so.0 + 0x8b54 ]
address : <0x020da800> [ /iicore/a.out + 0xda800 ]
address : <0x00002ee0> { _do_signal + 0x308 }
address : <0x020d9198> [ /iicore/a.out + 0xd9198 ]
address : <0x0208d5d0> [ /iicore/a.out + 0x8d5d0 ]
address : <0x0208d766> [ /iicore/a.out + 0x8d766 ]
address : <0x00088dc0> { ___debugfs_remove + 0x68 }
Data access CPLB miss
- Used by the MMU to signal a CPLB miss on a data access.
Deferred Exception context
CURRENT PROCESS:
COMM=a.out PID=301
CPU = 0
TEXT = 0x02000000-0x021b22e0 DATA = 0x00f802e0-0x00fed18c
BSS = 0x00fed18c-0x033e0000 USER-STACK = 0x033ffeb0
return address: [0x037a4678]; contents of:
0x037a4650: 3031 180a 304f 67f9 0981 1c25 e51a 003d
0x037a4660: 9110 0981 1420 0e0f e51a 001c 142a 0c06
0x037a4670: 1807 0000 0000 320e [e590] 0041 9308 e590
0x037a4680: 0042 0c00 e697 0041 1809 0000 0000 e121
SEQUENCER STATUS: Not tainted
SEQSTAT: 00062026 IPEND: 0030 SYSCFG: 0006
EXCAUSE : 0x26
interrupts disabled
physical IVG5 asserted : <0xffa00b44> { _evt_ivhw + 0x0 }
RETE: <0x00000000> { _do_one_initcall + 0xfffff000 }
RETN: <0x03b68000> [ a.out + 0x0 ]
RETX: <0x00000480> /* Maybe fixed code section */
RETS: <0x037a46d0> [ /lib/libpthread.so.0 + 0x46d0 ]
PC : <0x037a4678> [ /lib/libpthread.so.0 + 0x4678 ]
DCPLB_FAULT_ADDR: <0x04370198> /* kernel dynamic memory */
ICPLB_FAULT_ADDR: <0x037a4678> [ /lib/libpthread.so.0 + 0x4678 ]
PROCESSOR STATE:
R0 : 04370157 R1 : 04370157 R2 : 03b6670b R3 : 0000003a
R4 : 00000800 R5 : 00fc6334 R6 : 03b66744 R7 : 00000001
P0 : 00fbee30 P1 : 03b66744 P2 : 04370157 P3 : 037b1528
P4 : 00fc637c P5 : 0051ddd4 FP : 03b66728 SP : 03b67f24
LB0: 03d1f951 LT0: 03d1f94e LC0: 00000000
LB1: 0209f14d LT1: 0209f138 LC1: 00000006
B0 : 00000000 L0 : 00000000 M0 : 00000000 I0 : 00000000
B1 : 00000000 L1 : 00000000 M1 : 00000000 I1 : 03b39be0
B2 : 00000000 L2 : 00000000 M2 : 00000000 I2 : 00000000
B3 : 00000000 L3 : 00000000 M3 : 00000000 I3 : 00000000
A0.w: 205547df A0.x: 00000000 A1.w: 000080b2 A1.x: 00000000
USP : 03b66714 ASTAT: 02003004
Hardware Trace:
0 Target : <0x00004a74> { _trap_c + 0x0 }
Source : <0xffa00602> { _exception_to_level5 + 0x9e } CALL pcrel
1 Target : <0xffa00564> { _exception_to_level5 + 0x0 }
Source : <0xffa0042a> { _bfin_return_from_exception + 0x6 } RTX
2 Target : <0xffa00424> { _bfin_return_from_exception + 0x0 }
Source : <0xffa004be> { _ex_trap_c + 0x66 } JUMP.S
3 Target : <0xffa00370> { _ex_dcplb_miss + 0x0 }
Source : <0xffa0068e> { _trap + 0x2a } JUMP (P4)
4 Target : <0xffa00664> { _trap + 0x0 }
Source : <0x037a4676> [ /lib/libpthread.so.0 + 0x4676 ] 0x320e
5 Target : <0x037a466e> [ /lib/libpthread.so.0 + 0x466e ]
Source : <0x037a46be> [ /lib/libpthread.so.0 + 0x46be ] IF !CC JUMP
6 Target : <0x037a46bc> [ /lib/libpthread.so.0 + 0x46bc ]
Source : <0x037a46d4> [ /lib/libpthread.so.0 + 0x46d4 ] JUMP.S
7 Target : <0x037a46d0> [ /lib/libpthread.so.0 + 0x46d0 ]
Source : <0x037a8f24> [ /lib/libpthread.so.0 + 0x8f24 ] RTS
8 Target : <0x037a8f1e> [ /lib/libpthread.so.0 + 0x8f1e ]
Source : <0x037a8f18> [ /lib/libpthread.so.0 + 0x8f18 ] IF !CC JUMP
9 Target : <0x037a8f0e> [ /lib/libpthread.so.0 + 0x8f0e ]
Source : <0x037a8f1c> [ /lib/libpthread.so.0 + 0x8f1c ] JUMP.S
10 Target : <0x037a8f0e> [ /lib/libpthread.so.0 + 0x8f0e ]
Source : <0x037a8f1c> [ /lib/libpthread.so.0 + 0x8f1c ] JUMP.S
11 Target : <0x037a8f1a> [ /lib/libpthread.so.0 + 0x8f1a ]
Source : <0x037a8f12> [ /lib/libpthread.so.0 + 0x8f12 ] IF CC JUMP
12 Target : <0x037a8f0e> [ /lib/libpthread.so.0 + 0x8f0e ]
Source : <0x037a8f1c> [ /lib/libpthread.so.0 + 0x8f1c ] JUMP.S
13 Target : <0x037a8f1a> [ /lib/libpthread.so.0 + 0x8f1a ]
Source : <0x037a8f12> [ /lib/libpthread.so.0 + 0x8f12 ] IF CC JUMP
14 Target : <0x037a8f0e> [ /lib/libpthread.so.0 + 0x8f0e ]
Source : <0x037a8f1c> [ /lib/libpthread.so.0 + 0x8f1c ] JUMP.S
15 Target : <0x037a8f1a> [ /lib/libpthread.so.0 + 0x8f1a ]
Source : <0x037a8f12> [ /lib/libpthread.so.0 + 0x8f12 ] IF CC JUMP
Userspace Stack
Stack info:
SP: [0x03b66714] <0x03b66714> /* kernel dynamic memory */
FP: (0x03b66938)
Memory from 0x03b66710 to 03b67000
03b66710:<037a46d0>[46018702] 8f100f0c 0003a304 037b1528 0000c668 03b66748 <037a8e74>
03b66730: 037b1528 00000005 8d07a308 87058c06 85038604 03b66764 03b66764 <020d9022>
03b66750: 00fbee30 00000005 03b66788 <0201c736> 0051ddd4 03b66788 <0201c7da> 00f81c64
03b66770: 00fbee30 000000c8 a3078f1c 00000007 0000001c 000000c8 03b667b8 <0201cb08>
03b66790: 0051ddd4 00f81c64 00000000 03b66970 0051de34 00000800 00085ba0 00000000
03b667b0: 44180e42 00fbee30 03b66954 00000400 00000800 0051ddd4 0214f8b8 00000001
03b667d0: 00000007 03b667e4 03b66864 8f200f0c 8d07a308 00000007 00000000 00000001
03b667f0: 037a4678 0000c708 00085d80 00000416 44180e42 8f200f0c 8d07a308 87058c06
03b66810: 85038604 00018402 00000024 0000c708 00086198 000007a4 46180e42 8f200f0c
03b66830: 8d07a308 87058c06 85038604 00018402 00000024 0000c708 0008693c 000000b2
03b66850: 44180e42 8f200f0c 8d07a308 87058c06 85038604 00000000 00000000 00000000
03b66870: 00000002 00000000 04370157 04370157 03b66937 00000800 00000800 0051de34
03b66890: 03b66970 00000001 00fbee30 03b66970 04370157 037b1528 0214f8b8 0051ddd4
03b668b0: 03b66940 205547df 000080b2 00000000 00000000 02003004 <037a46d0> 037a4678
03b668d0: 00000480 03b66954 00000000 03b39be0 00000000 00000000 00000000 00000000
03b668f0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
03b66910: 00000000 00000000 00000000 00000006 03d1f94e 0209f138 03d1f951 0209f14d
03b66930: 00062026 80000000 (00000000)<037a46d0> 03b39530 03b39898 03b39be0 037b1528
03b66950:<020c97be> 03b66974 <037a8b54> 037b1528 00000005 000007fc 00000800 03b669a0
03b66970: 00000007 03b66998 <020da800> 0051ddd4 03b6aa87 00000001 00000800 00000002
03b66990: 000000c0 <00002ee0> 03b669b0 <020d9198> 03b6aa88 <0208d5d0> 0051de34 0214f8b8
03b669b0: 03b6aa88 <0208d766> 0051de34 00000066 87058c06 03b6aa78 03b6aa7c 03b6aa70
03b669d0: 03b6aa74 03b6aa68 03b6aa84 44180e42 8f200f0c 8d07a308 87058c06 85038604
03b669f0: 00018402 00000024 00fbee30 00000000 00000000 0051ddd4 8f200f0c 8d07a308
03b66a10: 0000050c 85038604 00018402 00000024 000000c0 00000003 00000480 0000ac44
03b66a30: 00000002 0051f1a4 86048705 84028503 00000001 00000024 0000c8ec 00087290
03b66a50: 0000009a 44140e42 8f1c0f0c 8d06a307 86048705 84028503 00000001 0000000c
03b66a70: ffffffff 7c010001 000e0c23 00000020 0000ca2c 0008732c 0000006a 8d0c0e42
03b66a90: 86028703 0f0c4a01 a3058f14 00000004 00000024 0000ca2c 00087398 000000f6
03b66ab0: 44180e48 8f200f0c 8d07a308 87058c06 85038604 00018402 00000020 0000ca2c
03b66ad0: 00087490 00000064 8d0c0e42 87028c03 0f0c4601 a3058f14 00000004 00000024
03b66af0: 0000ca2c 000874f4 00000308 46180e42 8f200f0c 8d07a308 87058c06 85038604
03b66b10: 00018402 0000000c ffffffff 7c010001 000e0c23 0000001c 0000cad4 000877fc
03b66b30: 0000005e 44080e42 8f100f0c 8d03a304 00018c02 00000024 0000cad4 0008785c
03b66b50: 00000274 44180e44 8f200f0c 8d07a308 87058c06 85038604 00018402 00000020
03b66b70: 0000cad4 00087ad0 0000005e 8d100e42 87038c04 46018602 8f180f0c 0005a306
03b66b90: 00000024 0000cad4 00087b30 000001be 8d180e42 87058c06 85038604 4c018402
03b66bb0: 8f200f0c 0007a308 0000000c ffffffff 7c010001 000e0c23 00000014 0000cb78
03b66bd0: 00087cf0 00000036 080f0c48 01a3028f 00000014 0000cb78 00087d28 00000036
03b66bf0: 080f0c48 01a3028f 00000014 0000cb78 00087d60 00000014 080f0c46 01a3028f
03b66c10: 00000014 0000cb78 00087d74 00000020 080f0c46 01a3028f 00000024 0000cb78
03b66c30: 00087d94 00000120 8d180e42 87058c06 85038604 46018402 8f200f0c 0007a308
03b66c50: 00000020 0000cb78 00087eb4 0000005c 44100e44 8f180f0c 8d05a306 86038704
03b66c70: 00018502 00000024 0000cb78 00087f10 00000090 44180e42 8f200f0c 8d07a308
03b66c90: 87058c06 85038604 00018402 0000001c 0000cb78 00087fa0 0000002c 44040e42
03b66cb0: 8f0c0f0c 8702a303 00000001 0000001c 0000cb78 00087fcc 0000002e 44040e42
03b66cd0: 8f0c0f0c 8702a303 00000001 0000001c 0000cb78 00087ffc 0000006c 44080e42
03b66cf0: 8f100f0c 8703a304 00018602 00000020 0000cb78 00088068 0000008e 8d100e42
03b66d10: 87038c04 46018602 8f180f0c 0005a306 00000024 0000cb78 000880f8 00000050
03b66d30: 44140e44 8f1c0f0c 8d06a307 87048c05 85028603 00000001 00000024 0000cb78
03b66d50: 00088148 000000b8 44180e44 8f200f0c 8d07a308 87058c06 85038604 00018402
03b66d70: 00000020 0000cb78 00088200 000000b2 44100e42 8f180f0c 8d05a306 86038704
03b66d90: 00018502 00000024 0000cb78 000882b4 000000b2 8d180e42 87058c06 85038604
03b66db0: 46018402 8f200f0c 0007a308 0000001c 0000cb78 00088368 00000034 8d080e42
03b66dd0: 46018702 8f100f0c 0003a304 0000001c 0000cb78 0008839c 00000042 44080e46
03b66df0: 8f100f0c 8d03a304 00018702 0000001c 0000cb78 000883e0 00000026 44080e42
03b66e10: 8f100f0c 8703a304 00018602 00000024 0000cb78 00088408 000000c0 44180e44
03b66e30: 8f200f0c 8d07a308 87058c06 85038604 00018402 00000020 0000cb78 000884c8
03b66e50: 000000ae 8d100e42 87038c04 46018602 8f180f0c 0005a306 00000024 0000cb78
03b66e70: 00088578 000001b2 44180e42 8f200f0c 8d07a308 87058c06 85038604 00018402
03b66e90: 00000020 0000cb78 0008872c 0000008c 8d100e42 86038704 4c018502 8f180f0c
03b66eb0: 0005a306 00000020 0000cb78 000887b8 000000ae 8d100e42 86038704 4c018502
03b66ed0: 8f180f0c 0005a306 00000024 0000cb78 00088868 00000096 8d180e42 87058c06
03b66ef0: 85038604 4a018402 8f200f0c 0007a308 00000024 0000cb78 00088900 0000011a
03b66f10: 44180e42 8f200f0c 8d07a308 87058c06 85038604 00018402 00000024 0000cb78
03b66f30: 00088a1c 00000124 44180e44 8f200f0c 8d07a308 87058c06 85038604 00018402
03b66f50: 00000020 0000cb78 00088b40 000000d4 8d100e42 87038c04 46018602 8f180f0c
03b66f70: 0005a306 00000024 0000cb78 00088c14 0000018e 8d180e42 87058c06 85038604
03b66f90: 46018402 8f200f0c 0007a308 0000001c 0000cb78 00088da4 0000001c 44080e42
03b66fb0: 8f100f0c 8703a304 00018602 00000020 0000cb78 <00088dc0> 00000142 8d100e42
03b66fd0: 87038c04 46018602 8f180f0c 0005a306 00000024 0000cb78 00088f04 000003d2
03b66ff0: 44180e42 8f200f0c 8d07a308 87058c06 85038604
Return addresses in stack:
address : <0x037a46d0> [ /lib/libpthread.so.0 + 0x46d0 ]
address : <0x037a8e74> [ /lib/libpthread.so.0 + 0x8e74 ]
address : <0x020d9022> [ /iicore/a.out + 0xd9022 ]
address : <0x0201c736> [ /iicore/a.out + 0x1c736 ]
address : <0x0201c7da> [ /iicore/a.out + 0x1c7da ]
address : <0x0201cb08> [ /iicore/a.out + 0x1cb08 ]
address : <0x037a46d0> [ /lib/libpthread.so.0 + 0x46d0 ]
frame 1 : <0x037a46d0> [ /lib/libpthread.so.0 + 0x46d0 ]
address : <0x020c97be> [ /iicore/a.out + 0xc97be ]
address : <0x037a8b54> [ /lib/libpthread.so.0 + 0x8b54 ]
address : <0x020da800> [ /iicore/a.out + 0xda800 ]
address : <0x00002ee0> { _do_signal + 0x308 }
address : <0x020d9198> [ /iicore/a.out + 0xd9198 ]
address : <0x0208d5d0> [ /iicore/a.out + 0x8d5d0 ]
address : <0x0208d766> [ /iicore/a.out + 0x8d766 ]
address : <0x00088dc0> { ___debugfs_remove + 0x68 }
Bus error
QuoteReplyEditDelete
2009-04-15 23:52:53 Re: CPLB miss in pthread
Yi Li (CHINA)
Message: 72717
So you are using 8MB thread stack size and still get the exception.
You can try debug as: docs.blackfin.uclinux.org/doku.php?id=uclinux-dist:debugging_applications#analyzing_traces
See what happens around here: Source : <0x037a4676> [ /lib/libpthread.so.0 + 0x4676 ] 0x320e
QuoteReplyEditDelete
2009-04-16 01:40:58 Re: CPLB miss in pthread
Nicole Otsuka (CHINA)
Message: 72723
i get the info according to the docs
4652: 0a 18 IF CC JUMP 0x4666 <_pthread_setcanceltype+0x26>;
4654: 4f 30 R1 = FP;
4656: f9 67 R1 += -0x1; /* ( -1) */
4658: 81 09 CC = R1 < R0 (IU);
465a: 25 1c IF CC JUMP 0x46a4 <_pthread_setcanceltype+0x64> (BP);
465c: 1a e5 3d 00 P2 = [P3 + 0xf4];
4660: 10 91 R0 = [P2];
4662: 81 09 CC = R1 < R0 (IU);
4664: 20 14 IF !CC JUMP 0x46a4 <_pthread_setcanceltype+0x64> (BP);
4666: 0f 0e CC = R7 <= 0x1 (IU);
4668: 1a e5 1c 00 P2 = [P3 + 0x70];
466c: 2a 14 IF !CC JUMP 0x46c0 <_pthread_setcanceltype+0x80> (BP);
466e: 06 0c CC = R6 == 0x0;
4670: 07 18 IF CC JUMP 0x467e <_pthread_setcanceltype+0x3e>;
4672: 00 00 NOP;
4674: 00 00 NOP;
4676: 0e 32 P1 = R6; //this line
4678: 90 e5 41 00 R0 = B[P2 + 0x41] (X);
467c: 08 93 [P1] = R0;
467e: 90 e5 42 00 R0 = B[P2 + 0x42] (X);
4682: 00 0c CC = R0 == 0x0;
4684: 97 e6 41 00 B[P2 + 0x41] = R7;
4688: 09 18 IF CC JUMP 0x469a <_pthread_setcanceltype+0x5a>;
468a: 00 00 NOP;
468c: 00 00 NOP;
468e: 21 e1 00 01 R1 = 0x100 (X); /* R1=0x100(256) */
4692: 50 e4 20 00 R0 = W[P2 + 0x40] (Z);
4696: 08 08 CC = R0 == R1;
4698: 1f 18 IF CC JUMP 0x46d6 <_pthread_setcanceltype+0x96>;
469a: 01 e8 00 00 UNLINK;
469e: 00 60 R0 = 0x0 (X); /* R0=0x0( 0) */
46a0: 30 05 (R7:6) = [SP++];
46a2: 10 00 RTS;
46a4: 1a e5 3b 00 P2 = [P3 + 0xec];
46a8: 10 91 R0 = [P2];
46aa: 81 09 CC = R1 < R0 (IU);
QuoteReplyEditDelete
2009-04-16 04:17:20 Re: CPLB miss in pthread
Yi Li (CHINA)
Message: 72736
You did not call pthread_create() correctly:
> pthread_attr_init (&Mp3PlayThreadHandle);
> res = pthread_create(&Mp3PlayThreadHandle, // this should be a pthread_t object, not pthread_attr_t
> NULL,
> Mp3PlayThreadRoutine,
> NULL);
Correct way:
int pthread_create(pthread_t *thread, const pthread_attr_t *attr,
void *(*start_routine)(void*), void *arg);
That explains why getstacksize() not correct after pthread_create.
-Yi
QuoteReplyEditDelete
2009-04-16 05:35:16 Re: CPLB miss in pthread
Nicole Otsuka (CHINA)
Message: 72740
oh,i'm so sorry.it's my fault....
after set the size correctly, it works....
thank you very much