2008-01-24 04:01:41 "Data access CPLB protection violation" while executing
soni shetty (INDIA)
Message: 50071 hi
I got the following message while executing the exe in bf561-ezkit target::
"Data access CPLB protection violation
- Attempted read or write to Supervisor resource,
or illegal data memory access."
and followed by CURRENT PROCESS.
Can anyone explain why the above violation occurs and how to eliminate that?
thank you
QuoteReplyEditDelete
2008-01-24 04:16:34 Re: "Data access CPLB protection violation" while executing
Mike Frysinger (UNITED STATES)
Message: 50073 please consult the documentation:
http://docs.blackfin.uclinux.org/doku.php?id=debuging_applications#analyzing_traces
the error you posted can be caused by many things, and since you didnt post the full trace, there's no way of telling where it came from
QuoteReplyEditDelete
2008-01-24 04:27:07 Re: "Data access CPLB protection violation" while executing
soni shetty (INDIA)
Message: 50074 Mike:
The following is the full trace:::
Data access CPLB protection violation
- Attempted read or write to Supervisor resource,
or illegal data memory access.
CURRENT PROCESS:
COMM=EXE_DCT_A_SRVR_ PID=110
TEXT = 0x02800040-0x028c24a0 DATA = 0x028c24a4-0x028ec404
BSS = 0x028ec404-0x02b0bb24 USER-STACK = 0x02bfff6c
return address: 0x0282008c; contents of [PC-16...PC+8]:
b0b8 e140 02aa e100 42d6 e303 fa27 e801
0000 0010 e800 0009 e14a ffc0 e10a 0104 X
9510 bbd0 b9d0 42c1 e180 ffdf 5401 e14a
RETE: 00000000 RETN: 003ec000 RETX: 0282008c RETS: 02899db0
IPEND: 0030 SYSCFG: 0036
SEQSTAT: 00062023 SP: 003ebf24
R0: 00000001 R1: 02bfff70 R2: 02bfff78 R3: 00000bd0
R4: 02cc02ec R5: 02820080 R6: 00000001 R7: 00000000
P0: 004e7ff4 P1: 02820080 P2: ffc00104 P3: 028c2464
P4: 02bfff70 P5: 00000000 FP: 02bfff1c
A0.w: 00000000 A0.x: 00000000 A1.w: 00000000 A1.x: 00000000
LB0: 02898053 LT0: 02898052 LC0: 00000000
LB1: 028c1835 LT1: 028c182e LC1: 00000000
B0: 00000000 L0: 00000000 M0: 00000000 I0: 004e7144
B1: 00000000 L1: 00000000 M1: 00000000 I1: 00001000
B2: 00000000 L2: 00000000 M2: 00000000 I2: 00000000
B3: 00000000 L3: 00000000 M3: 00000000 I3: 00000000
USP: 02bffef8 ASTAT: 02001004
DCPLB_FAULT_ADDR=ffc00104
ICPLB_FAULT_ADDR=0282008c
Hardware Trace:
0 Target : <0x00004594> { _trap_c + 0x0 }
Source : <0xffa00b58> { _exception_to_level5 + 0xb4 }
1 Target : <0xffa00aa4> { _exception_to_level5 + 0x0 }
Source : <0xffa00aa2> { _ex_trap_c + 0x4e }
2 Target : <0xffa009fc> { _handle_bad_cplb + 0x0 }
Source : <0xffa004fc> { __cplb_hdr + 0x5c }
3 Target : <0xffa004fa> { __cplb_hdr + 0x5a }
Source : <0x00004522> { _panic_cplb_error + 0x16 }
4 Target : <0x0000450c> { _panic_cplb_error + 0x0 }
Source : <0xffa004f6> { __cplb_hdr + 0x56 }
5 Target : <0xffa004f2> { __cplb_hdr + 0x52 }
Source : <0xffa004ea> { __cplb_hdr + 0x4a }
6 Target : <0xffa004e4> { __cplb_hdr + 0x44 }
Source : <0xffa004de> { __cplb_hdr + 0x3e }
7 Target : <0xffa004dc> { __cplb_hdr + 0x3c }
Source : <0xffa004d6> { __cplb_hdr + 0x36 }
8 Target : <0xffa004d4> { __cplb_hdr + 0x34 }
Source : <0xffa004cc> { __cplb_hdr + 0x2c }
9 Target : <0xffa004c8> { __cplb_hdr + 0x28 }
Source : <0xffa0064c> { _cplb_mgr + 0x14c }
10 Target : <0xffa00648> { _cplb_mgr + 0x148 }
Source : <0xffa00662> { _cplb_mgr + 0x162 }
11 Target : <0xffa0064e> { _cplb_mgr + 0x14e }
Source : <0xffa00504> { _cplb_mgr + 0x4 }
12 Target : <0xffa00500> { _cplb_mgr + 0x0 }
Source : <0xffa004c4> { __cplb_hdr + 0x24 }
13 Target : <0xffa004c0> { __cplb_hdr + 0x20 }
Source : <0xffa004ae> { __cplb_hdr + 0xe }
14 Target : <0xffa004a0> { __cplb_hdr + 0x0 }
Source : <0xffa00860> { _ex_icplb + 0x64 }
15 Target : <0xffa007e8> { _ex_dcplb + 0x0 }
Source : <0xffa00bf8> { _trap + 0x28 }
Stack from 003ebf04:
00000000 ffa00b5c 00120710 00120710 00120710 04000021 00000000 02899df8
0282008c 00000030 00062023 00000000 003ec000 0282008c 0282008c 02899db0
00000001 02001004 028c1835 02898053 028c182e 02898052 00000000 00000000
00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
00000000 00000000 00001000 004e7144 02bffef8 02bfff1c 00000000 02bfff70
Call Trace:
Illegal instruction
thank you
QuoteReplyEditDelete
2008-01-24 04:42:25 Re: "Data access CPLB protection violation" while executing
Mike Frysinger (UNITED STATES)
Message: 50076 you will still need to consult the documentation to help you trace the issue on your system
QuoteReplyEditDelete
2008-01-28 08:28:13 Re: "Data access CPLB protection violation" while executing
soni shetty (INDIA)
Message: 50226 hi,
Thanking you for your information provided .Still We cant decide whether the CPLB violation occurs due to "bad pointers"or any misaligned data access. As there are enumerous number of pointers used in our application,we couldn't locate exactly the cause for this problem.It seems the violation ocured because of illegal access of MMR registers.After enable 'trace ' option in make menuconfig,the hardware trace looks like:::
-------------------------------------------------------------------
root:/bin/Encoder> ./EXE_DCT_A_SRVR_NP
Data access CPLB protection violation
- Attempted read or write to Supervisor resource,
or illegal data memory access.
CURRENT PROCESS:
COMM=EXE_DCT_A_SRVR_ PID=84
TEXT = 0x03000040-0x030c2480 DATA = 0x030c2484-0x030ec3e4
BSS = 0x030ec3e4-0x0330bb04 USER-STACK = 0x033fff6c
return address: 0x0302008c; contents of [PC-16...PC+8]:
b0b8 e140 032a e100 42b6 e303 fa1d e801
0000 0010 e800 0009 e14a ffc0 e10a 0104 X
9510 bbd0 b9d0 42c1 e180 ffdf 5401 e14a
RETE: 00000000 RETN: 034ba000 RETX: 0302008c RETS: 03099d9c
IPEND: 0030 SYSCFG: 0036
SEQSTAT: 00002023 SP: 034b9f24
R0: 00000001 R1: 033fff70 R2: 033fff78 R3: 00000c38
R4: 034c03e4 R5: 03020080 R6: 00000001 R7: 00000000
P0: 035dbff4 P1: 03020080 P2: ffc00104 P3: 030c2450
P4: 033fff70 P5: 00000000 FP: 033fff1c
A0.w: 00000000 A0.x: 00000000 A1.w: 00000000 A1.x: 00000000
LB0: 0309803f LT0: 0309803e LC0: 00000000
LB1: 030c1821 LT1: 030c181a LC1: 00000000
B0: 00000000 L0: 00000000 M0: 00000000 I0: 035db144
B1: 00000000 L1: 00000000 M1: 00000000 I1: 00001000
B2: 00000000 L2: 00000000 M2: 00000000 I2: 00000000
B3: 00000000 L3: 00000000 M3: 00000000 I3: 00000000
USP: 033ffef8 ASTAT: 02001004
DCPLB_FAULT_ADDR=ffc00104
ICPLB_FAULT_ADDR=0302008c
Hardware Trace:
0 Target : <0x00004594> { _trap_c + 0x0 }
Source : <0xffa00b94> { _exception_to_level5 + 0xb4 }
1 Target : <0xffa00ae0> { _exception_to_level5 + 0x0 }
Source : <0xffa00ade> { _ex_trap_c + 0x5a }
2 Target : <0xffa00c0c> { _trap + 0x0 }
Source : <0xffa00a1c> { _return_from_exception + 0x12 }
3 Target : <0xffa00c0c> { _trap + 0x0 }
Source : <0x03020088> [ EXE_DCT_A_SRVR_ + 0x20088 ]
4 Target : <0x03020080> [ EXE_DCT_A_SRVR_ + 0x20080 ]
Source : <0x03099d9a> [ EXE_DCT_A_SRVR_ + 0x99d9a ]
5 Target : <0x03099d84> [ EXE_DCT_A_SRVR_ + 0x99d84 ]
Source : <0x03099fec> [ EXE_DCT_A_SRVR_ + 0x99fec ]
6 Target : <0x03099fdc> [ EXE_DCT_A_SRVR_ + 0x99fdc ]
Source : <0x03099d80> [ EXE_DCT_A_SRVR_ + 0x99d80 ]
7 Target : <0x03099d6e> [ EXE_DCT_A_SRVR_ + 0x99d6e ]
Source : <0x03095058> [ EXE_DCT_A_SRVR_ + 0x95058 ]
8 Target : <0x03095048> [ EXE_DCT_A_SRVR_ + 0x95048 ]
Source : <0x03099d6a> [ EXE_DCT_A_SRVR_ + 0x99d6a ]
9 Target : <0x03099d58> [ EXE_DCT_A_SRVR_ + 0x99d58 ]
Source : <0x03099d46> [ EXE_DCT_A_SRVR_ + 0x99d46 ]
10 Target : <0x03099d2e> [ EXE_DCT_A_SRVR_ + 0x99d2e ]
Source : <0x030c2460> [ EXE_DCT_A_SRVR_ + 0xc2460 ]
11 Target : <0x030c245c> [ EXE_DCT_A_SRVR_ + 0xc245c ]
Source : <0x0309cb22> [ EXE_DCT_A_SRVR_ + 0x9cb22 ]
12 Target : <0x0309cb16> [ EXE_DCT_A_SRVR_ + 0x9cb16 ]
Source : <0x0300157e> [ EXE_DCT_A_SRVR_ + 0x157e ]
13 Target : <0x0300157a> [ EXE_DCT_A_SRVR_ + 0x157a ]
Source : <0x0300156a> [ EXE_DCT_A_SRVR_ + 0x156a ]
14 Target : <0x03001566> [ EXE_DCT_A_SRVR_ + 0x1566 ]
Source : <0x030999d8> [ EXE_DCT_A_SRVR_ + 0x999d8 ]
15 Target : <0x030999c6> [ EXE_DCT_A_SRVR_ + 0x999c6 ]
Source : <0x030999c0> [ EXE_DCT_A_SRVR_ + 0x999c0 ]
Stack from 034b9f04:
00000000 ffa00b98 00120714 00120714 00120710 04000021 00000000 03099de4
0302008c 00000030 00002023 00000000 034ba000 0302008c 0302008c 03099d9c
00000001 02001004 030c1821 0309803f 030c181a 0309803e 00000000 00000000
00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
00000000 00000000 00001000 035db144 033ffef8 033fff1c 00000000 033fff70
Call Trace:
Illegal instruction
-----------------------------------------------
any help in this regard is greatly appreciated.
soni.
QuoteReplyEditDelete
2008-01-31 12:48:51 Re: "Data access CPLB protection violation" while executing
soni shetty (INDIA)
Message: 50491
The DCPLB_FAULT_ADDR=ffc00104 belongs to system MMR registers.By tracing our application using bfin-uclinux-objdump,it seems that address is used by bfin_write_SICB_SYSCR , bfin_read_, functions.
As the error shows "Attempted read or write to Supervisor resource",how to access supervisor resource or how to enter in to supervisor mode?
thanks
QuoteReplyEditDelete
2008-01-31 16:37:55 Re: "Data access CPLB protection violation" while executing
Robin Getz (UNITED STATES)
Message: 50497 MMRs are accessed by kernel drivers - not by userspace.
-Robin