2008-01-24 04:01:41     "Data access CPLB protection violation" while executing

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

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

Attachments

    Outcomes