FAQ: [#6191] Traps test may fail at Stack set to non-existant L1 on bf538-ezkit(2010)

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

[#6191] Traps test may fail at Stack set to non-existant L1 on bf538-ezkit

Submitted By: Vivi Li

Open Date

2010-08-17 23:26:31     Close Date

2011-09-16 04:42:43

Priority:

Medium     Assignee:

Aaron Wu

Status:

Closed     Fixed In Release:

N/A

Found In Release:

2010R1-RC5     Release:

Category:

N/A     Board:

EZKIT Lite

Processor:

BF538     Silicon Revision:

Is this bug repeatable?:

Yes     Resolution:

Not reproducible

Uboot version or rev.:

    Toolchain version or rev.:

gcc4.3-2010_Aug_04

App binary format:

N/A     

Summary: Traps test may fail at Stack set to non-existant L1 on bf538-ezkit

Details:

 

Traps test may fail at Stack set to non-existant L1 on bf538-ezkit.

Run test 93 for some time and it will make kernel panic.

This bug happens after Aug 4th, 2010.

 

Bellow is the log:

--

Running test 93 for exception 0x3f: Stack set to non-existant L1

... External Memory Addressing Error

Kernel OOPS in progress

HW Error context

CURRENT PROCESS:

COMM=traps_test PID=212  CPU=0

TEXT = 0x02990040-0x029989e0        DATA = 0x02998a00-0x0299c168

BSS = 0x0299c168-0x0299c5f0  USER-STACK = 0x0299df54

 

return address: [0xffa00b9e]; contents of:

0xffa00b70:  0160  0161  0162  0163  0170  0173  0171  0174

0xffa00b80:  0172  0175  0166  0140  0167  31c3  0140  017c

0xffa00b90:  017d  017e  0179  0140  017b  6000  3620 [3628]

0xffa00ba0:  3630  3638  e108  203c  e148  ffe0  e109  0fec

Looks like this was a deferred error - sorry

It might be better to look around here :

-------------------------------------------

 

ADSP-BF538-0.4 525(MHz CCLK) 131(MHz SCLK) (mpu off)

Linux version 2.6.34.4-ADI-2010R1-pre-svn9082 (test@uclinux70-bf538) (gcc version 4.3.5 (ADI-trunk/svn-4747) ) #24 Mon Aug 16 230

 

SEQUENCER STATUS:               Not tainted

SEQSTAT: 0000c000  IPEND: 2990f44  IMASK: 0000  SYSCFG: 0006

  Peripheral interrupts masked off

  Kernel interrupts masked off

  EXCAUSE   : 0x0

  physical IVG2 asserted : <0xffa00e08> { _evt_nmi + 0x0 }

  physical IVG6 asserted : <0xffa00e0c> { _evt_timer + 0x0 }

  physical IVG8 asserted : <0xffa00e84> { _evt_evt8 + 0x0 }

  physical IVG9 asserted : <0xffa00ec0> { _evt_evt9 + 0x0 }

  physical IVG10 asserted : <0xffa00efc> { _evt_evt10 + 0x0 }

  physical IVG11 asserted : <0xffa00f38> { _evt_evt11 + 0x0 }

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

  logical irq  14 mapped  : <0x000bca08> { _bfin_rtc_interrupt + 0x0 }

  logical irq  21 mapped  : <0x000a7e04> { _bfin_serial_dma_rx_int + 0x0 }

  logical irq  22 mapped  : <0x000a7b5c> { _bfin_serial_dma_tx_int + 0x0 }

  logical irq  71 mapped  : <0x000b6b08> { _smc_interrupt + 0x0 }

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

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

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

RETS: <0x029917e8> /* kernel dynamic memory (maybe user-space) */

PC  : <0x02990f44> /* kernel dynamic memory (maybe user-space) */

PROCESSOR STATE:

R0 : 00000001    R1 : 0000005d    R2 : 00000001    R3 : 00000100

R4 : 00000006    R5 : 00000001    R6 : 0299a7a0    R7 : 0299dee0

P0 : 000005d0    P1 : 02998b38    P2 : 02998b38    P3 : 00000001

P4 : 0299df58    P5 : 0299bf80    FP : ffafff00    SP : 02981f24

LB0: 02996a61    LT0: 02996a60    LC0: 00000000

LB1: 028f27fd    LT1: 028f27fc    LC1: 00000000

B0 : 00000000    L0 : 00000000    M0 : 00000004    I0 : 0299dc25

B1 : 00000000    L1 : 00000000    M1 : 00000000    I1 : 02998a20

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 : ffafff00  ASTAT: 02003004

 

-------------------------------------------

 

ADSP-BF538-0.4 525(MHz CCLK) 131(MHz SCLK) (mpu off)

Linux version 2.6.34.4-ADI-2010R1-pre-svn9082 (test@uclinux70-bf538) (gcc version 4.3.5 (ADI-trunk/svn-4747) ) #24 Mon Aug 16 230

 

SEQUENCER STATUS:               Not tainted

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

  Global Interrupts Disabled (IPEND[4])

  Peripheral interrupts masked off

  Kernel interrupts masked off

  HWERRCAUSE: 0x3

  EXCAUSE   : 0x3f

  interrupts disabled

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

  physical IVG15 asserted : <0xffa00b44> { _schedule_and_signal + 0x0 }

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

  logical irq  14 mapped  : <0x000bca08> { _bfin_rtc_interrupt + 0x0 }

  logical irq  21 mapped  : <0x000a7e04> { _bfin_serial_dma_rx_int + 0x0 }

  logical irq  22 mapped  : <0x000a7b5c> { _bfin_serial_dma_tx_int + 0x0 }

  logical irq  71 mapped  : <0x000b6b08> { _smc_interrupt + 0x0 }

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

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

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

RETS: <0x029917e8> /* kernel dynamic memory (maybe user-space) */

PC  : <0xffa00b9e> { _schedule_and_signal + 0x5a }

PROCESSOR STATE:

R0 : 00000000    R1 : 0000005d    R2 : 00000001    R3 : 00000100

R4 : 00000006    R5 : 00000001    R6 : 0299a7a0    R7 : 0299dee0

P0 : 000005d0    P1 : 02998b38    P2 : 02998b38    P3 : 00000001

P4 : 0299df58    P5 : 0299bf80    FP : ffafff00    SP : 02981e48

LB0: 02996a61    LT0: 02996a60    LC0: 00000000

LB1: 028f27fd    LT1: 028f27fc    LC1: 00000000

B0 : 00000000    L0 : 00000000    M0 : 00000004    I0 : 0299dc25

B1 : 00000000    L1 : 00000000    M1 : 00000000    I1 : 02998a20

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 : ffafff00  ASTAT: 02003004

 

Hardware Trace:

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

     Source : <0xffa00da6> { _evt_ivhw + 0xaa } JUMP.L

   1 Target : <0xffa00d88> { _evt_ivhw + 0x8c }

     Source : <0xffa00d7a> { _evt_ivhw + 0x7e } IF !CC JUMP pcrel

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

      FAULT : <0xffa00b9c> { _schedule_and_signal + 0x58 } 0x3620

   3 Target : <0xffa00b44> { _schedule_and_signal + 0x0 }

     Source : <0xffa00e04> { _evt_ivhw + 0x108 } RTI

   4 Target : <0xffa00db0> { _evt_ivhw + 0xb4 }

     Source : <0xffa00a86> { _ret_from_exception + 0x66 } RTS

   5 Target : <0xffa00a20> { _ret_from_exception + 0x0 }

     Source : <0xffa00dac> { _evt_ivhw + 0xb0 } JUMP.L

   6 Target : <0xffa00daa> { _evt_ivhw + 0xae }

     Source : <0x00004026> { _trap_c + 0x12e } RTS

Kernel Stack

Stack info:

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

Memory from 0x02981de0 to 02982000

02981de0: 00000001  00000000  00000007 [00000006] 00000007  ffafff00  0000003f  ffafff00

02981e00: 0001a096  028d88f8  02042b64  02981e80  00000000  00000007  02990f60  02990f44

02981e20: 00000000  ffa00daa  0299bf80  0299dee0  0299a7a0  00000001  00000006  00000007

02981e40: 02981e80  00000013  02991a30  00008030  0000c03f  00000000  02982000  02991a30

02981e60: ffa00b9e <029917e8> 00000000  02003004  028f27fd  02996a61  028f27fc  02996a60

02981e80: 00000000  00000000  00000000  00000000  00000000  00000000  00000000  00000000

02981ea0: 00000000  00000000  00000000  00000000  00000000  00000000  00000000  00000000

02981ec0: 00000000  00000004  00000000  00000000  02998a20  0299dc25  ffafff00  ffafff00

02981ee0: 0299bf80  0299df58  00000001  02998b38  02998b38  000005d0  0299dee0  0299a7a0

02981f00: 00000001  00000006  00000100  00000001  0000005d  00000000  00000000  000005d0

02981f20: 00000006  02990f44  02990f44  0000c000  00000000  02982000  02991a30  02990f44

02981f40:<029917e8> 00000001  02003004  028f27fd  02996a61  028f27fc  02996a60  00000000

02981f60: 00000000  00000000  00000000  00000000  00000000  00000000  00000000  00000000

02981f80: 00000000  00000000  00000000  00000000  00000000  00000000  00000000  00000000

02981fa0: 00000004  00000000  00000000  02998a20  0299dc25  ffafff00  ffafff00  0299bf80

02981fc0: 0299df58  00000001  02998b38  02998b38  000005d0  0299dee0  0299a7a0  00000001

02981fe0: 00000006  00000100  00000001  0000005d  00000001  00000001  000005d0  00000006

Return addresses in stack:

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

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

Modules linked in:

Kernel panic - not syncing: Kernel exception

Hardware Trace:

Stack info:

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

Memory from 0x02981d60 to 02982000

02981d60: 00000007  02981d6c  00000013 [00143510] 00115112  02981e48  00143510  001784ae

02981d80: 001784ae  001784ae  02981d9c  00004334  02981e48  0299dee0  02981e48  0000ffff

02981da0: 0000003f  000064d8  00010d92  00030002  ffafff00  6678303c  66666166  3e303066

02981dc0: 202a2f20  6e72656b  00000000  6d616e79  6d206369  00000000  0000e90c  00185b28

02981de0: 00000001  00000000  00000007  00000006  00000007  ffafff00  0000003f  ffafff00

02981e00: 0001a096  028d88f8  02042b64  02981e80  00000000  00000007  02990f60  02990f44

02981e20: 00000000  ffa00daa  0299bf80  0299dee0  0299a7a0  00000001  00000006  00000007

02981e40: 02981e80  00000013  02991a30  00008030  0000c03f  00000000  02982000  02991a30

02981e60: ffa00b9e <029917e8> 00000000  02003004  028f27fd  02996a61  028f27fc  02996a60

02981e80: 00000000  00000000  00000000  00000000  00000000  00000000  00000000  00000000

02981ea0: 00000000  00000000  00000000  00000000  00000000  00000000  00000000  00000000

02981ec0: 00000000  00000004  00000000  00000000  02998a20  0299dc25  ffafff00  ffafff00

02981ee0: 0299bf80  0299df58  00000001  02998b38  02998b38  000005d0  0299dee0  0299a7a0

02981f00: 00000001  00000006  00000100  00000001  0000005d  00000000  00000000  000005d0

02981f20: 00000006  02990f44  02990f44  0000c000  00000000  02982000  02991a30  02990f44

02981f40:<029917e8> 00000001  02003004  028f27fd  02996a61  028f27fc  02996a60  00000000

02981f60: 00000000  00000000  00000000  00000000  00000000  00000000  00000000  00000000

02981f80: 00000000  00000000  00000000  00000000  00000000  00000000  00000000  00000000

02981fa0: 00000004  00000000  00000000  02998a20  0299dc25  ffafff00  ffafff00  0299bf80

02981fc0: 0299df58  00000001  02998b38  02998b38  000005d0  0299dee0  0299a7a0  00000001

02981fe0: 00000006  00000100  00000001  0000005d  00000001  00000001  000005d0  00000006

Return addresses in stack:

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

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

--

 

Follow-ups

 

--- Sonic Zhang                                              2010-08-23 23:58:39

Can't replicate on kernel svn r9029 and uClinux-dist svn r9747.

 

--- Vivi Li                                                  2010-11-09 03:23:09

The bug still exists on trunk and 2010r1 branch. test 92 of Stack set to L1

instruction will also fail.

 

Use following command to reproduce this bug:

--

while [ 1 ]; do traps_test 93; traps_test 92; done

--

 

--- Sonic Zhang                                              2010-11-09 05:51:37

This bug can't be found in the same kernel rev. built by the same 2010R1-RC4

toolchain release on Suse 10.2 32 bit OS. But, if built on Suse 11.0 64 bit OS,

testing fails. The assembler instructions in vmlinux binary built on 32 bit OS

are different from that on 64 bit OS. Why the same toolchain generate different

code from the same kernel source?

 

--- Sonic Zhang                                              2010-11-10 00:02:55

After more investigation, I find the issue is not related to 32 bit or 64 bit

OS, but to which uClibc RPM is installed, default or full. On my 32 bit Suse

10.2, kernel binary built by toolchain with full uClibc can pass the kgdb

testing while that with default uClibc fails. And kernel binaries are also

different.

 

 

--- Sonic Zhang                                              2010-11-10 00:19:08

Ignore my last 2 comments, they are against bug 6333

 

--- Aaron Wu                                                 2010-11-28 23:39:18

This happens only after times of retrial, randomly. Add a delay and a general

test has passed, need regression test.

 

--- Vivi Li                                                  2011-06-10 02:36:04

It's OK since then.

 

--- Vivi Li                                                  2011-09-16 04:42:43

Not reproducible now.

Close it.

 

 

 

    Files

    Changes

    Commits

    Dependencies

    Duplicates

    Associations

    Tags

 

File Name     File Type     File Size     Posted By

config.linux.traps    application/octet-stream    35726    Vivi Li

Attachments

Outcomes