2009-02-23 22:08:05     External Memory Addressing Error

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

2009-02-23 22:08:05     External Memory Addressing Error

hong li (CHINA)

Message: 69781   

 

Hi

 

   Everyone, recently,  in order to  exchange  data between CoreA and CoreB  on bf561 platform,  I write a driver under uClinux 2008r1.5-RC3, However,  When I call the ioctl system call about twenty times, happen error as follow:

 

External Memory Addressing Error

Kernel OOPS in progress

HW Error context

CURRENT PROCESS:

COMM=avsession PID=118

TEXT = 0x00380000-0x003e0570        DATA = 0x03230570-0x0323f5fc

BSS = 0x0323f5fc-0x008a0000  USER-STACK = 0x008bfe60

 

return address: [0xffa01b66]; contents of:

0xffa01b40:  56c1  6019  54cb  020b  181b  44d2  0d52  1007

0xffa01b50:  3212  e0a2  2003  984b  9a03  0010  6ffa  e0a4

0xffa01b60:  2004  3449  9c0b [c803] 1800  9203  9c0b  9203

0xffa01b70:  601b  54da  0c03  3289  1002  0010  3213  e0a2

 

SEQUENCER STATUS:  Not tainted

SEQSTAT: 0000c03f  IPEND: 8030  SYSCFG: 0006

  HWERRCAUSE: 0x3

  EXCAUSE   : 0x3f

  physical IVG15 asserted : <0xffa00e58> { _evt_system_call + 0x0 }

  logical irq   6 mapped  : <0xffa00250> { _timer_interrupt + 0x0 }

  logical irq  34 mapped  : <0x000b56e4> { _dma_irq_handler + 0x0 }

  logical irq  35 mapped  : <0x000a7e08> { _bfin_serial_dma_rx_int + 0x0 }

  logical irq  36 mapped  : <0x000a7d70> { _bfin_serial_dma_tx_int + 0x0 }

  logical irq  62 mapped  : <0x000090b0> { _coreb_dma_interrupt + 0x0 }

  logical irq  76 mapped  : <0x000b0c10> { _dm9000_interrupt + 0x0 }

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

RETN: <0x00b7c000> [ avsession + 0x0 ]

RETX: <0x009ce7a6> [ /lib/libuClibc-0.9.29.so + 0xe7a6 ]

RETS: <0x001c2130> { :smi:_smi_read + 0x124 }

PC  : <0xffa01b66> { _memcpy + 0x3a }

 

PROCESSOR STATE:

R0 : 00a00004    R1 : 00000003    R2 : 00006c4b    R3 : fcb0eb70

R4 : 00006c4b    R5 : feb1a034    R6 : 00a00004    R7 : 00006c48

P0 : 00a05fcc    P1 : feb1a034    P2 : 00001b11    P3 : 03248fe8

P4 : 001c2aa0    P5 : 001c2aa4    FP : 00b7eb88    SP : 00b7bdb0

LB0: ffa01b66    LT0: ffa01b66    LC0: 0000031f

LB1: 03266fc9    LT1: 03266f90    LC1: 00000000

B0 : 0000001e    L0 : 00000000    M0 : 00000000    I0 : 00000000

B1 : 00000000    L1 : 00000000    M1 : 00000000    I1 : feb20000

B2 : 00000000    L2 : 00000000    M2 : 00000000    I2 : 00000000

B3 : 00000000    L3 : 00000000    M3 : 00000000    I3 : 00b7eb80

A0.w: 00000001   A0.x: 00000000   A1.w: 00000001   A1.x: 00000000

USP : 00b7eb7c  ASTAT: 02002001

 

Hardware Trace:

   0 Target : <0x00004938> { _trap_c + 0x0 }

     Source : <0xffa00d88> { _evt_ivhw + 0x8c }

   1 Target : <0xffa00d6a> { _evt_ivhw + 0x6e }

     Source : <0xffa00d66> { _evt_ivhw + 0x6a }

   2 Target : <0xffa00cfc> { _evt_ivhw + 0x0 }

     Source : <0xffa01b66> { _memcpy + 0x3a }

   3 Target : <0xffa01b5c> { _memcpy + 0x30 }

     Source : <0xffa01b4e> { _memcpy + 0x22 }

   4 Target : <0xffa01b2c> { _memcpy + 0x0 }

     Source : <0x001c212e> { :smi:_smi_read + 0x122 }

   5 Target : <0x001c211e> { :smi:_smi_read + 0x112 }

     Source : <0x001c20be> { :smi:_smi_read + 0xb2 }

   6 Target : <0x001c20bc> { :smi:_smi_read + 0xb0 }

     Source : <0xffa001cc> { __access_ok + 0xb4 }

   7 Target : <0xffa001bc> { __access_ok + 0xa4 }

     Source : <0xffa00142> { __access_ok + 0x2a }

   8 Target : <0xffa00118> { __access_ok + 0x0 }

     Source : <0x001c20ba> { :smi:_smi_read + 0xae }

   9 Target : <0x001c20a4> { :smi:_smi_read + 0x98 }

     Source : <0x001c208a> { :smi:_smi_read + 0x7e }

  10 Target : <0x001c203a> { :smi:_smi_read + 0x2e }

     Source : <0x001c202e> { :smi:_smi_read + 0x22 }

  11 Target : <0x001c200c> { :smi:_smi_read + 0x0 }

     Source : <0x00037548> { _vfs_read + 0x80 }

  12 Target : <0x00037532> { _vfs_read + 0x6a }

     Source : <0x0008619c> { _dummy_file_permission + 0x8 }

  13 Target : <0x00086194> { _dummy_file_permission + 0x0 }

     Source : <0x00037530> { _vfs_read + 0x68 }

  14 Target : <0x00037518> { _vfs_read + 0x50 }

     Source : <0x00036e94> { _rw_verify_area + 0x84 }

  15 Target : <0x00036e80> { _rw_verify_area + 0x70 }

     Source : <0x00036e58> { _rw_verify_area + 0x48 }

Stack from 00b7bd90:

        000000a0 ffa00d8c ffc00014 00006c48 00a00004 00000000 00000000 00000006

        009ce7a6 00008030 0000c03f 00000000 00b7c000 009ce7a6 ffa01b66 001c2130

        00a00004 02002001 03266fc9 ffa01b66 03266f90 ffa01b66 00000000 0000031f

        00000001 00000000 00000001 00000000 00000000 00000000 00000000 0000001e

        00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000

        00b7eb80 00000000 feb20000 00000000 00b7eb7c 00b7eb88 001c2aa4 001c2aa0

 

Call Trace:

[<00001b11>] _arch_ptrace+0x75/0x508

[<00006c48>] _dma_insl+0x88/0xb8

[<00006c4b>] _dma_insl+0x8b/0xb8

[<00006c4b>] _dma_insl+0x8b/0xb8

[<00006c48>] _dma_insl+0x88/0xb8

[<0003754a>] _vfs_read+0x82/0xf4

[<00025200>] ___find_symbol+0x90/0x208

[<00025200>] ___find_symbol+0x90/0x208

[<0001fc68>] _sys_nanosleep+0x58/0x5c

[<00037866>] _sys_read+0x32/0x64

[<00025200>] ___find_symbol+0x90/0x208

[<00037834>] _sys_read+0x0/0x64

[<00025200>] ___find_symbol+0x90/0x208

[<00008000>] _l1_data_A_sram_alloc+0x20/0x34

[<00025200>] ___find_symbol+0x90/0x208

[<00025200>] ___find_symbol+0x90/0x208

 

Modules linked in: smi

Kernel panic - not syncing: Kernel exception

 

My driver is in attachment.

 

Any reply is Thanks!!

 

Hong

 

smi.c

QuoteReplyEditDelete

 

 

2009-02-23 22:32:57     Re: External Memory Addressing Error

Mike Frysinger (UNITED STATES)

Message: 69782   

 

please read the documentation:

docs.blackfin.uclinux.org/doku.php?id=uclinux-dist:debugging_applications#analyzing_traces

QuoteReplyEditDelete

 

 

2009-02-23 23:44:34     Re: External Memory Addressing Error

hong li (CHINA)

Message: 69783   

 

Mike

 

       Thanks, read the documentation firstly

 

Hong

Attachments

Outcomes