[#5393] App ircp crashed for bfin irda driver

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

[#5393] App ircp crashed for bfin irda driver

Submitted By: Vivi Li

Open Date

2009-07-24 03:12:08     Close Date

2009-08-10 01:10:12

Priority:

Medium High     Assignee:

Graf Yang

Status:

Closed     Fixed In Release:

N/A

Found In Release:

N/A     Release:

Category:

Drivers     Board:

N/A

Processor:

ALL     Silicon Revision:

Is this bug repeatable?:

Yes     Resolution:

Fixed

Uboot version or rev.:

    Toolchain version or rev.:

gcc4.1-09r1_rc9

App binary format:

N/A     

Summary: App ircp crashed for bfin irda driver

Details:

 

App ircp crashed for bfin irda driver.

 

Bellow is the log for bf537-stamp:

--

Linux version 2.6.28.10-ADI-2009R1-svn7051 (test@uclinux54-adv7393-ad1981-usb1362) (gcc version 4.1.2 (ADI svn)) #40 Thu Jul 23 9

bootconsole [early_shadow0] enabled

bootconsole [early_BFuart0] enabled

early printk enabled on early_BFuart0

Warning: limiting memory to 56MB due to hardware anomaly 05000263

Board Memory: 64MB

Kernel Managed Memory: 64MB

Memory map:

  fixedcode = 0x00000400-0x00000490

  text      = 0x00001000-0x00110b00

  rodata    = 0x00110b00-0x00165508

  bss       = 0x00166000-0x001777a8

  data      = 0x001777a8-0x00188000

    stack   = 0x00186000-0x00188000

  init      = 0x00188000-0x008cc000

  available = 0x008cc000-0x037ff000

  DMA Zone  = 0x03f00000-0x04000000

Hardware Trace Active and Enabled

Boot Mode: 0

Blackfin support (C) 2004-2009 Analog Devices, Inc.

Compiled for ADSP-BF537 Rev 0.2

Blackfin Linux support by http://blackfin.uclinux.org/

Processor Speed: 500 MHz core clock and 125 MHz System Clock

NOMPU: setting up cplb tables

Instruction Cache Enabled for CPU0

Data Cache Enabled for CPU0 (write-back)

Built 1 zonelists in Zone order, mobility grouping off.  Total pages: 14223

Kernel command line: root=/dev/mtdblock0 rw clkin_hz=25000000 earlyprintk=serial,uart0,57600 console=ttyBF0,57600 ip=10.100.4.50f

Configuring Blackfin Priority Driven Interrupts

PID hash table entries: 256 (order: 8, 1024 bytes)

bfin-rtc: invalid date; resetting

console handover:boot [early_BFuart0] boot [early_shadow0]  -> real [ttyBF0]

Dentry cache hash table entries: 8192 (order: 3, 32768 bytes)

Inode-cache hash table entries: 4096 (order: 2, 16384 bytes)

Memory available: 47764k/65536k RAM, (7440k init code, 1086k kernel code, 478k data, 1024k dma, 7744k reserved)

Calibrating delay loop... 995.32 BogoMIPS (lpj=1990656)

Security Framework initialized

Mount-cache hash table entries: 512

Blackfin Scratchpad data SRAM: 4 KB

Blackfin L1 Data A SRAM: 16 KB (15 KB free)

Blackfin L1 Data B SRAM: 16 KB (16 KB free)

Blackfin L1 Instruction SRAM: 48 KB (37 KB free)

net_namespace: 288 bytes

NET: Registered protocol family 16

Blackfin DMA Controller

stamp_init(): registering device resources

NET: Registered protocol family 23

NET: Registered protocol family 2

IP route cache hash table entries: 1024 (order: 0, 4096 bytes)

TCP established hash table entries: 2048 (order: 2, 16384 bytes)

TCP bind hash table entries: 2048 (order: 1, 8192 bytes)

TCP: Hash tables configured (established 2048 bind 2048)

TCP reno registered

NET: Registered protocol family 1

msgmni has been set to 93

io scheduler noop registered

io scheduler anticipatory registered (default)

io scheduler cfq registered

Serial: Blackfin serial driver

bfin-uart.1: ttyBF0 at MMIO 0xffc00400 (irq = 18) is a BFIN-UART

brd: module loaded

bfin_mii_bus: probed

bfin_mac: attached PHY driver [SMSC LAN83C185] (mii_bus:phy_addr=0:01, irq=-1, mdc_clk=2500000Hz(mdc_div=24)@sclk=125MHz)

bfin_mac bfin_mac.0: Blackfin on-chip Ethernet MAC driver, Version 1.1

bfin-spi bfin-spi.0: Blackfin on-chip SPI Controller Driver, Version 1.0, regs_base@ffc00500, dma channel@7

rtc-bfin rtc-bfin: rtc core: registered rtc-bfin as rtc0

bfin-wdt: initialized: timeout=20 sec (nowayout=0)

TCP cubic registered

NET: Registered protocol family 17

rtc-bfin rtc-bfin: setting system clock to 1970-01-01 00:00:01 UTC (1)

IP-Config: Gateway not on directly connected network.

Freeing unused kernel memory: 7440k freed

dma_alloc_init: dma_page @ 0x008c8000 - 256 pages at 0x03f00000

                           _____________________________________

        a8888b.           / Welcome to the uClinux distribution \\\\

       d888888b.         /       _     _                         \\\\

       8P\\\"YP\\\"Y88        /       | |   |_|            __  __ (TM)  |

       8|o||o|88  _____/        | |    _ ____  _   _ \\\\ \\\\/ /       |

       8\\\'    .88       \\\\        | |   | |  _ \\\\| | | | \\\\  /        |

       8`._.\\\' Y8.       \\\\       | |__ | | | | | |_| | /  \\\\        |

      d/      `8b.       \\\\      \\\\____||_|_| |_|\\\\____|/_/\\\\_\\\\       |

     dP   .    Y8b.       \\\\   For embedded processors including   |

    d8:\\\'  \\\"  `::88b        \\\\    the Analog Devices Blackfin      /

   d8\\\"         \\\'Y88b        \\\\___________________________________/

  :8P    \\\'      :888

   8a.   :     _a88P         For further information, check out:

._/\\\"Yaa_:   .| 88P|            - http://blackfin.uclinux.org/

\\\\    YP\\\"    `| 8P  `.          - http://docs.blackfin.uclinux.org/

/     \\\\.___.d|    .\\\'           - http://www.uclinux.org/

`--..__)8888P`._.\\\'  jgs/a:f    - http://www.analog.com/blackfin

 

Have a lot of fun...

 

 

BusyBox v1.13.4 (2009-07-23 09:54:37 CST) built-in shell (msh)

Enter \\\'help\\\' for a list of built-in commands.

 

root:/> PHY: 0:01 - Link is Up - 100/Full

 

root:/> modprobe bfin_sir

root:/> irattach irda0 -s&

164

root:/> cat /proc/net/irda/discovery

IrLMP: Discovery log:

 

nickname: VLI-L01, hint: 0x8425, saddr: 0x1d4b2cb2, daddr: 0x0001a064

 

 

root:/> ircp -r

Waiting for incoming connection

Incoming connectionData access CPLB miss

- Used by the MMU to signal a CPLB miss on a data access.

Deferred Exception context

CURRENT PROCESS:

COMM=ircp PID=172

CPU = 0

TEXT = 0x001e0040-0x001e8200        DATA = 0x001e8220-0x001e9aa0

BSS = 0x001e9aa0-0x001e9da0  USER-STACK = 0x001eaf7c

 

return address: [0x001e5e46]; contents of:

0x001e5e20:  1fe5  0803  51fa  181c  0000  0000  0000  ac51

0x001e5e30:  0c41  1807  3071  9109  520e  6460  0803  1820

0x001e5e40:  3222  0c40  5a94 [bc51] bc90  1818  bc42  0c41

0x001e5e50:  1802  bc8a  324a  9317  2fd6  6800  2fc7  0c40

 

ADSP-BF537-0.2 500(MHz CCLK) 125(MHz SCLK) (mpu off)

Linux version 2.6.28.10-ADI-2009R1-svn7051

Built with gcc version 4.1.2 (ADI svn)

 

SEQUENCER STATUS:               Not tainted

SEQSTAT: 00060026  IPEND: 0030  SYSCFG: 0006

  EXCAUSE   : 0x26

  interrupts disabled

  physical IVG5 asserted : <0xffa00c34> { _evt_ivhw + 0x0 }

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

RETN: <0x032fe000> /* kernel dynamic memory */

RETX: <0x00000480> /* Maybe fixed code section */

RETS: <0x001e5b2e> [ ircp + 0x5aee ]

PC  : <0x001e5e46> [ ircp + 0x5e06 ]

DCPLB_FAULT_ADDR: <0x065c1950> /* kernel dynamic memory */

ICPLB_FAULT_ADDR: <0x001e5e46> [ ircp + 0x5e06 ]

 

PROCESSOR STATE:

R0 : 032e0958    R1 : 00000000    R2 : 032e1000    R3 : 032e1000

R4 : 032e1000    R5 : 032e0958    R6 : 032e094c    R7 : 032e1000

P0 : 00000000    P1 : 00000000    P2 : 065c194c    P3 : 001e9940

P4 : 032e1000    P5 : 001e9940    FP : 001ead24    SP : 032fdf24

LB0: 001e50a9    LT0: 001e50a6    LC0: 00000000

LB1: 001e6ee1    LT1: 001e6e9a    LC1: 00000000

B0 : 00000000    L0 : 00000000    M0 : 00000000    I0 : 001e94f0

B1 : 00000000    L1 : 00000000    M1 : 00000000    I1 : 032a2004

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

B3 : 00000000    L3 : 00000000    M3 : 00000000    I3 : 00000000

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

USP : 001ead24  ASTAT: 02002020

 

Hardware Trace:

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

     Source : <0xffa00674> { _exception_to_level5 + 0xa8 } CALL pcrel

   1 Target : <0xffa005cc> { _exception_to_level5 + 0x0 }

     Source : <0xffa004a4> { _bfin_return_from_exception + 0x20 } RTX

   2 Target : <0xffa00484> { _bfin_return_from_exception + 0x0 }

     Source : <0xffa0051a> { _ex_trap_c + 0x46 } JUMP.S

   3 Target : <0xffa003b0> { _ex_dcplb_miss + 0x0 }

     Source : <0xffa003aa> { _ex_workaround_261 + 0x1a } IF CC JUMP

   4 Target : <0xffa00390> { _ex_workaround_261 + 0x0 }

     Source : <0xffa0074e> { _trap + 0x66 } JUMP (P4)

   5 Target : <0xffa00708> { _trap + 0x20 }

     Source : <0xffa00704> { _trap + 0x1c } IF !CC JUMP

   6 Target : <0xffa006e8> { _trap + 0x0 }

     Source : <0xffa004a4> { _bfin_return_from_exception + 0x20 } RTX

   7 Target : <0xffa00484> { _bfin_return_from_exception + 0x0 }

     Source : <0xffa003a2> { _ex_workaround_261 + 0x12 } IF !CC JUMP

   8 Target : <0xffa00390> { _ex_workaround_261 + 0x0 }

     Source : <0xffa0074e> { _trap + 0x66 } JUMP (P4)

   9 Target : <0xffa00708> { _trap + 0x20 }

     Source : <0xffa00704> { _trap + 0x1c } IF !CC JUMP

  10 Target : <0xffa006e8> { _trap + 0x0 }

     Source : <0x001e5e44> [ ircp + 0x5e04 ] 0x5a94

  11 Target : <0x001e5e40> [ ircp + 0x5e00 ]

     Source : <0x001e5e32> [ ircp + 0x5df2 ] IF !CC JUMP

  12 Target : <0x001e5e12> [ ircp + 0x5dd2 ]

     Source : <0x001e5dd8> [ ircp + 0x5d98 ] IF !CC JUMP

  13 Target : <0x001e5dd2> [ ircp + 0x5d92 ]

     Source : <0x001e5dce> [ ircp + 0x5d8e ] JUMP.S

  14 Target : <0x001e5dbc> [ ircp + 0x5d7c ]

     Source : <0x001e5b2a> [ ircp + 0x5aea ] CALL pcrel

  15 Target : <0x001e5b18> [ ircp + 0x5ad8 ]

     Source : <0x001e5af8> [ ircp + 0x5ab8 ] IF CC JUMP

Userspace Stack

Stack info:

SP: [0x001ead24] <0x001ead24> [ ircp + 0xad24 ]

FP: (0x001ead24)

Memory from 0x001ead20 to 001eb000

001ead20: 001e9a2c [001ead48]<001e5b2e> 001e9944  001e9ccc  00000000  00000000  001ead58

001ead40:<001e4f72> 001e98c0  001ead78 <001e367c> 001e9984  001e9a2c  032e0408  032e0940

001ead60: 00000000  00000080  032e0828  001ead80  001ead9c <001e2130> 001ead9c <001e2138>

001ead80: 00000400  001eadb4 <001e1a2e> 001e9984  00000000  00000000  00000080  001eadd4

001eada0:<001e2b4e> 001e9984  001e9a2c  001e9984  00000001  00000000  00000080  00000003

001eadc0: 001e9984  001e9a2c  00000001  00000001  00000000  001eae04 <001e1b3a> 001e9a2c

001eade0: 032e0004  0000001f  0000001f  fffffffd <001e3cd6> 00000002  00000002  fffffffd

001eae00: 00000000  001eaec4 <001e29f6> 001e9984  001e9a9c  001eaf80  00000001  001e9488

001eae20: 00000002  00000002  00000001  00001000  00000000  00000000  001eaebc  00000010

001eae40: 00000000  00000000  00000000  00000000  00000000  00000000  00000000  00000000

001eae60: 00000000  00000000  00000000  00000000  00000000  00000000  00000000  00000000

001eae80: 00000000  00000000  00000000  00000000  00000000  00000000  00000000  00000000

001eaea0: 00000000  00000000  00000000  00000000  00000000  00000000  00000000  00000001

001eaec0: 00000000  001eaee0 <001e0a38> 001e9964  001e9964  001eaef8 <001e0ac8> 001e9964

001eaee0: 001eaef8 <001e0ad0> 001e9964 <001e07aa> 00000000  00000000  001eaf18 <001e02a0>

001eaf00: 001eaf80  001e9964  001e9cc8  00000000  001eaf28 <001e81dc> 001eaf3c <001e6094>

001eaf20: 001e8220  00000000  001e9cc8  001e81d0  00000000  00000000  00000000  00000000

001eaf40:<00822f74> 001e8220  008b8004  001a0510  00000000  001a04ec  001a049c  00000001

001eaf60: 001e01fc  00000000  00000000  001e81d0  001e81e2  00000000  008b8783  00000002

001eaf80: 001eafa3 <001eafa8> 00000000  001eafab  001eafb2  001eafc0  001eafe3  00000000

001eafa0: 69000000  00706372  4800722d  3d454d4f  4853002f  3d4c4c45  6e69622f  0068732f

001eafc0: 48544150  69622f3d  752f3a6e  622f7273  2f3a6e69  6e696273  73752f3a  62732f72

001eafe0: 54006e69  3d4d5245  756e696c  752f0078  622f7273  692f6e69  00706372  00000000

Return addresses in stack:

   frame  1 : <0x001e5b2e> [ ircp + 0x5aee ]

    address : <0x001e4f72> [ ircp + 0x4f32 ]

   frame  2 : <0x001e367c> [ ircp + 0x363c ]

    address : <0x001e2130> [ ircp + 0x20f0 ]

   frame  3 : <0x001e2138> [ ircp + 0x20f8 ]

    address : <0x001e1a2e> [ ircp + 0x19ee ]

   frame  4 : <0x001e2b4e> [ ircp + 0x2b0e ]

   frame  5 : <0x001e1b3a> [ ircp + 0x1afa ]

    address : <0x001e3cd6> [ ircp + 0x3c96 ]

   frame  6 : <0x001e29f6> [ ircp + 0x29b6 ]

   frame  7 : <0x001e0a38> [ ircp + 0x9f8 ]

    address : <0x001e0ac8> [ ircp + 0xa88 ]

   frame  8 : <0x001e0ad0> [ ircp + 0xa90 ]

    address : <0x001e07aa> [ ircp + 0x76a ]

   frame  9 : <0x001e02a0> [ ircp + 0x260 ]

    address : <0x001e81dc> [ ircp + 0x819c ]

   frame 10 : <0x001e6094> [ ircp + 0x6054 ]

   frame 11 : <0x00822f74> [ sh + 0x22f74 ]

    address : <0x001eafa8> [ ircp + 0xafa8 ]

 

Bus error

root:/>

--

 

Follow-ups

 

--- Graf Yang                                                2009-08-03 03:25:05

I can not reproduce this bug. Vivi will try it again.

 

--- Vivi Li                                                  2009-08-05 03:06:32

I can reproduce it on regression.

 

When stage is not cleaned after building bluetooth kernel, it will affect the

build of openobex and enable BLUETOOTH in openobex.

 

Please refer to the attached two config.log.

 

--- Graf Yang                                                2009-08-06 02:14:34

It is caused by stack overflow.

A uClibc variable __pagesize is overrided many times by the stack, then a cplb

error occured in __heap_free().

 

The flat format ircp will use 8k stack now.

 

--- Vivi Li                                                  2009-08-10 06:10:23

OK now. Close it.

 

 

 

    Files

    Changes

    Commits

    Dependencies

    Duplicates

    Associations

    Tags

 

File Name     File Type     File Size     Posted By

config.log.openobex_manual_cleaned    application/octet-stream    46236    Vivi Li

config.log.openobex_regression    application/octet-stream    42622    Vivi Li

Outcomes