FAQ: [#6110] Read RSI_STATUSCL via debugfs mmrs will cause kernel crash on bf518-ezbrd(2010)

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

[#6110] Read RSI_STATUSCL via debugfs mmrs will cause kernel crash on bf518-ezbrd

Submitted By: Vivi Li

Open Date

2010-07-11 23:34:28     Close Date

2010-08-24 22:56:39

Priority:

Low     Assignee:

Mike Frysinger

Status:

Closed     Fixed In Release:

N/A

Found In Release:

2010R1     Release:

Category:

N/A     Board:

EZBRD

Processor:

BF518     Silicon Revision:

Is this bug repeatable?:

Yes     Resolution:

Fixed

Uboot version or rev.:

    Toolchain version or rev.:

gcc4.3-2010_Apr_07

App binary format:

N/A     

Summary: Read RSI_STATUSCL via debugfs mmrs will cause kernel crash on bf518-ezbrd

Details:

 

Read RSI_STATUSCL via debugfs mmrs will cause kernel crash on bf518-ezbrd.

 

--

/sys/kernel/debug/blackfin/RSI/RSI_STATUSCL

System MMR Error

<5> - An error occurred due to an invalid access to an System MMR location

<5>   Possible reason: a 32-bit register is accessed with a 16-bit instruction

<5>   or a 16-bit register is accessed with a 32-bit instruction.

Kernel OOPS in progress

HW Error context

CURRENT PROCESS:

COMM=cat PID=342  CPU=0

TEXT = 0x02980040-0x029c9860        DATA = 0x029c9880-0x029dace0

BSS = 0x029dace0-0x029dc650  USER-STACK = 0x029e4f54

 

return address: [0x00078b60]; contents of:

0x00078b40:  b049  6000  0010  0000  3210  6000  9711  0010

0x00078b50:  3210  3209  9510  42c0  6001  9308  b049  6000

0x00078b60: [0010] 0000  3210  6000  9311  0010  3210  3209

0x00078b70:  9110  9308  6000  b048  0010  0000  3210  6000

 

ADSP-BF518-0.1 400(MHz CCLK) 80(MHz SCLK) (mpu off)

Linux version 2.6.34.1-ADI-2010R1-pre-svn8982 (test@uclinux80-bf518f) (gcc version 4.3.4 (ADI-trunk/svn-3951) ) #8 Sun Jul 11 12:47:25 CST 2010

 

SEQUENCER STATUS:               Not tainted

SEQSTAT: 0000a03f  IPEND: 8030  IMASK: 0000  SYSCFG: 0006

  Global Interrupts Disabled (IPEND[4])

  Peripheral interrupts masked off

  Kernel interrupts masked off

  HWERRCAUSE: 0x2

  EXCAUSE   : 0x3f

  interrupts disabled

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

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

  logical irq   6 mapped  : <0xffa0039c> { _bfin_coretmr_interrupt + 0x0 }

  logical irq  21 mapped  : <0x000b61c0> { _bfin_rtc_interrupt + 0x0 }

  logical irq  27 mapped  : <0x000b8b38> { _bfin_twi_interrupt_entry + 0x0 }

  logical irq  29 mapped  : <0x000a2be4> { _bfin_serial_dma_rx_int + 0x0 }

  logical irq  30 mapped  : <0x000a2958> { _bfin_serial_dma_tx_int + 0x0 }

  logical irq  35 mapped  : <0x000b1a00> { _bfin_mac_interrupt + 0x0 }

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

RETN: <0x02864000> /* kernel dynamic memory (maybe user-space) */

RETX: <0x02982fb6> /* kernel dynamic memory (maybe user-space) */

RETS: <0x00057aee> { _simple_attr_read + 0x7e }

PC  : <0x00078b60> { _debugfs_u16_get + 0x10 }

PROCESSOR STATE:

R0 : 00000000    R1 : 00000000    R2 : 00000000    R3 : 00000000

R4 : 00001000    R5 : 029e3e60    R6 : 0269f100    R7 : 00000000

P0 : 025dd88c    P1 : 02863e8c    P2 : ffc03838    P3 : 029e3e60

P4 : 02863ef0    P5 : 0269f0c0    FP : 029e3e28    SP : 02863d9c

LB0: 0298c9f3    LT0: 0298c9ea    LC0: 0000000e

LB1: 0290cc61    LT1: 0290cc16    LC1: 00000000

B0 : 00000000    L0 : 00000000    M0 : 00000004    I0 : 029e4fed

B1 : 00000000    L1 : 00000000    M1 : 00000000    I1 : 029d4a18

B2 : 00000000    L2 : 00000000    M2 : 00000000    I2 : 029e4e98

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

A0.w: 0000147a   A0.x: 00000000   A1.w: 0000147a   A1.x: 00000000

USP : 029e3e1c  ASTAT: 02000021

 

Hardware Trace:

   0 Target : <0xffa00d5a> { _evt_ivhw + 0xaa }

     Source : <0xffa00d3c> { _evt_ivhw + 0x8c } 0xe10a2108

   1 Target : <0xffa00d2e> { _evt_ivhw + 0x7e }

     Source : <0xffa00cb0> { _evt_ivhw + 0x0 } SSYNC

   2 Target : <0x00078b5e> { _debugfs_u16_get + 0xe }

     Source : <0x00078b50> { _debugfs_u16_get + 0x0 } 0x3210

   3 Target : <0x00057aec> { _simple_attr_read + 0x7c }

     Source : <0x00057ae4> { _simple_attr_read + 0x74 } 0x304e

   4 Target : <0x00057aac> { _simple_attr_read + 0x3c }

     Source : <0x00057a98> { _simple_attr_read + 0x28 } 0x3038

   5 Target : <0x00112dd0> { _mutex_lock_interruptible + 0x38 }

     Source : <0x00112da4> { _mutex_lock_interruptible + 0xc } CLI R0

   6 Target : <0x001124f0> { __cond_resched + 0x20 }

     Source : <0x001124ea> { __cond_resched + 0x1a } 0x6000

   7 Target : <0x001124e2> { __cond_resched + 0x12 }

     Source : <0x001124d0> { __cond_resched + 0x0 } 0x3046

   8 Target : <0x00112da0> { _mutex_lock_interruptible + 0x8 }

     Source : <0x00112d98> { _mutex_lock_interruptible + 0x0 } 0x04c5

   9 Target : <0x00057a94> { _simple_attr_read + 0x24 }

     Source : <0x00057a70> { _simple_attr_read + 0x0 } 0x3210

  10 Target : <0x00043b98> { _vfs_read + 0x68 }

     Source : <0x00043b78> { _vfs_read + 0x48 } 0x3028

  11 Target : <0x00043302> { _rw_verify_area + 0x62 }

     Source : <0x000432ec> { _rw_verify_area + 0x4c } 0x0c00

  12 Target : <0x0007e492> { _cap_file_permission + 0x2 }

     Source : <0x0007e490> { _cap_file_permission + 0x0 } 0x6000

  13 Target : <0x0007ddd2> { _security_file_permission + 0xe }

     Source : <0x0007ddc4> { _security_file_permission + 0x0 } 0xe14a0017

  14 Target : <0x000432e8> { _rw_verify_area + 0x48 }

     Source : <0x000432a0> { _rw_verify_area + 0x0 } 0x05f5

  15 Target : <0x00043b74> { _vfs_read + 0x44 }

     Source : <0x00003f04> { _trap_c + 0x0 } 0x05e5

Kernel Stack

Stack info:

SP: [0x02863f24] <0x02863f24> /* kernel dynamic memory (maybe user-space) */

Memory from 0x02863f20 to 02864000

02863f20: 00000003 [02982fb6] 00008000  00002000  00000000  02864000  02982fb6  02982fb6

02863f40: 029999fc  ffa01004  02000000  0290cc61  0298c9f3  0290cc16  0298c9ea  00000000

02863f60: 0000000e  0000147a  00000000  0000147a  00000000  00000000  00000000  00000000

02863f80: 00000000  00000000  00000000  00000000  00000000  00000000  00000000  00000000

02863fa0: 00000004  00000000  029e4e98  029d4a18  029e4fed  029e3e1c  029e3e28  029dbc68

02863fc0: 00000000  029e3e60  029dc138  029e4f7f  00000003  00001000  029e3e60  00000003

02863fe0: 00000001  029e4f7f  00001000  029e3e60  00000003  00000003  00000003  00000006

Return addresses in stack:

Modules linked in:

Kernel panic - not syncing: Kernel exception

Hardware Trace:

Stack info:

SP: [0x02863cc0] <0x02863cc0> /* kernel dynamic memory (maybe user-space) */

FP: (0x02863e90)

Memory from 0x02863cc0 to 02864000

02863cc0:[0013f404] 00111f5e  02863d9c  0013f404  001714be  001714be  001714be  02863cf0

02863ce0: 00004340  02863d9c  00000000  02863d9c  0000ffff  0000003f  00000007  00000000

02863d00: 00030001  00000000  00000000  00000000  00000000  00000000  00000000  025db4d4

02863d20: 00040e56  00200200  00000000  00000000  00057b4a  0207a620  00078b50  00078b48

02863d40:<0014b6f4> 00000000  02964af8  00000001  000790a0  0207a620  025dd88c  0200df20

02863d60: 00000000  0007907c  00000000  025dd88c  00000024  00000024  ffa00d5e  0269f0c0

02863d80: 00000000  0269f100  029e3e60  00001000  00000001  00041e20  0207a620  02982fb6

02863da0: 00008030  0000a03f  00000000  02864000  02982fb6  00078b60 <00057aee> 00000000

02863dc0: 02000021  0290cc61  0298c9f3  0290cc16  0298c9ea  00000000  0000000e  0000147a

02863de0: 00000000  0000147a  00000000  00000000  00000000  00000000  00000000  00000000

02863e00: 00000000  00000000  00000000  00000000  00000000  00000000  00000004  00000000

02863e20: 029e4e98  029d4a18  029e4fed  029e3e1c  029e3e28  0269f0c0  02863ef0  029e3e60

02863e40: ffc03838  02863e8c  025dd88c  00000000  0269f100  029e3e60  00001000  00000000

02863e60: 00000000  00000000  00000000  00000000  025dd88c  00000006  00000001  00000001

02863e80: 00000000  0207a620  00177c90  00000000 (00000000)<00043b9a> 0207a620  00000003

02863ea0: 02863ef0  029e3e60  00001000  00000001  00000020  00000003  02865000  02863ef0

02863ec0: 02862000  02863ef4  00043cc0  0207a620  00000003  029e3e60  00001000  00000003

02863ee0: 00000007  00000000  ffffe000  02863ef0  00000000  00000000  00000000 <ffa008f6>

02863f00: 00043c90  00000000  ffffe000  ffffe000  02964fba  0000fffe  029e4f7f  00000001

02863f20: 00000003  02982fb6  00008000  00002000  00000000  02864000  02982fb6  02982fb6

02863f40: 029999fc  ffa01004  02000000  0290cc61  0298c9f3  0290cc16  0298c9ea  00000000

02863f60: 0000000e  0000147a  00000000  0000147a  00000000  00000000  00000000  00000000

02863f80: 00000000  00000000  00000000  00000000  00000000  00000000  00000000  00000000

02863fa0: 00000004  00000000  029e4e98  029d4a18  029e4fed  029e3e1c  029e3e28  029dbc68

02863fc0: 00000000  029e3e60  029dc138  029e4f7f  00000003  00001000  029e3e60  00000003

02863fe0: 00000001  029e4f7f  00001000  029e3e60  00000003  00000003  00000003  00000006

Return addresses in stack:

    address : <0x0014b6f4> /* kernel dynamic memory (maybe user-space) */

    address : <0x00057aee> { _simple_attr_read + 0x7e }

   frame  1 : <0x00043b9a> { _vfs_read + 0x6a }

    address : <0xffa008f6> { _system_call + 0x6a }

--

 

Follow-ups

 

--- Mike Frysinger                                           2010-07-23 02:27:48

not a regression, and i'll do a bit of rework to address this after the release

 

--- Mike Frysinger                                           2010-07-28 23:51:31

ive marked the register as write only since it is W1C only in the hardware

 

--- Vivi Li                                                  2010-08-24 22:56:39

OK now.

Close it.

 

 

 

    Files

    Changes

    Commits

    Dependencies

    Duplicates

    Associations

    Tags

 

File Name     File Type     File Size     Posted By

config.linux.debug_mmrs.bf518    application/octet-stream    34423    Vivi Li

Outcomes