[#5337] mem_fragment test failed in BF533-EZKIT

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

[#5337] mem_fragment test failed in BF533-EZKIT

Submitted By: Vivi Li

Open Date

2009-07-10 04:28:31     Close Date

2009-08-06 02:14:12

Priority:

Medium     Assignee:

Vivi Li

Status:

Closed     Fixed In Release:

N/A

Found In Release:

N/A     Release:

Category:

N/A     Board:

N/A

Processor:

BF533     Silicon Revision:

Is this bug repeatable?:

Yes     Resolution:

Fixed

Uboot version or rev.:

    Toolchain version or rev.:

gcc4.1_2009r1-rc9

App binary format:

N/A     

Summary: mem_fragment test failed in BF533-EZKIT

Details:

 

mem_fragment test failed in BF533-EZKIT.

It failed since kernel svn version 6253.

 

--

Linux version 2.6.28.10-ADI-2009R1-svn6917 (test@uclinux67-533ezkit) (gcc version 4.1.2 (ADI svn)) #4 Sat Jul 4 04:15:27 CST 2009

console [early_BFuart0] enabled

early printk enabled on early_BFuart0

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

Board Memory: 32MB

Kernel Managed Memory: 32MB

Memory map:

  fixedcode = 0x00000400-0x00000490

  text      = 0x00001000-0x000febd0

  rodata    = 0x000febd0-0x0014a190

  bss       = 0x0014b000-0x0015b41c

  data      = 0x0015b41c-0x0016a000

    stack   = 0x00168000-0x0016a000

  init      = 0x0016a000-0x006db000

  available = 0x006db000-0x01eff000

  DMA Zone  = 0x01f00000-0x02000000

Hardware Trace Active and Enabled

Boot Mode: 0

Reset caused by Software reset

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

Compiled for ADSP-BF533 Rev 0.3

Warning: Compiled for Rev 3, but running on Rev 4

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

Processor Speed: 594 MHz core clock and 118 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: 7873

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

Configuring Blackfin Priority Driven Interrupts

PID hash table entries: 128 (order: 7, 512 bytes)

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

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

Inode-cache hash table entries: 2048 (order: 1, 8192 bytes)

Memory available: 24432k/32768k RAM, (5572k init code, 1014k kernel code, 430k data, 1024k dma, 296k reserved)

Calibrating delay loop... 1183.74 BogoMIPS (lpj=2367488)

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: 64 KB (53 KB free)

net_namespace: 288 bytes

NET: Registered protocol family 16

Blackfin DMA Controller

ezkit_init(): registering device resources

NET: Registered protocol family 2

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

TCP established hash table entries: 1024 (order: 1, 8192 bytes)

TCP bind hash table entries: 1024 (order: 0, 4096 bytes)

TCP: Hash tables configured (established 1024 bind 1024)

TCP reno registered

NET: Registered protocol family 1

msgmni has been set to 47

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 = 21) is a BFIN-UART

brd: module loaded

smc91x.c: v1.1, sep 22 2004 by Nicolas Pitre <nico@cam.org>

eth0: SMC91C11xFD (rev 1) at 20310300 IRQ 42 [nowait]

eth0: Ethernet addr: 00:e0:22:fe:b1:2e

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

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 2004-06-06 17:41:28 UTC (1086543688)

eth0: link down

IP-Config: Complete:

     device=eth0, addr=10.100.4.50, mask=255.255.255.0, gw=10.100.4.174,

     host=bf533-ezkit, domain=, nis-domain=(none),

     bootserver=10.100.4.174, rootserver=10.100.4.174, rootpath=

Freeing unused kernel memory: 5572k freed

dma_alloc_init: dma_page @ 0x006d9000 - 256 pages at 0x01f00000

eth0: link up, 100Mbps, full-duplex, lpa 0x41E1

                           _____________________________________

        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-03 21:27:36 CST) built-in shell (msh)

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

 

root:/> ./mkfragment

mkfragment invoked oom-killer: gfp_mask=0x40d0, order=1, oomkilladj=0

Hardware Trace:

   0 Target : <0x00004b68> { _dump_stack + 0x0 }

     Source : <0x000315bc> { _oom_kill_process + 0xd8 } CALL pcrel

   1 Target : <0x000315bc> { _oom_kill_process + 0xd8 }

     Source : <0x000104fe> { _printk + 0x16 } RTS

   2 Target : <0x000104fa> { _printk + 0x12 }

     Source : <0x00010d16> { _vprintk + 0x132 } RTS

   3 Target : <0x00010d0a> { _vprintk + 0x126 }

     Source : <0xffa00c22> { __common_int_entry + 0xda } RTI

   4 Target : <0xffa00bc0> { __common_int_entry + 0x78 }

     Source : <0xffa00a04> { _return_from_int + 0x58 } RTS

   5 Target : <0xffa00a04> { _return_from_int + 0x58 }

     Source : <0xffa009da> { _return_from_int + 0x2e } IF !CC JUMP

   6 Target : <0xffa009ac> { _return_from_int + 0x0 }

     Source : <0xffa00bbc> { __common_int_entry + 0x74 } CALL pcrel

   7 Target : <0xffa00bba> { __common_int_entry + 0x72 }

     Source : <0xffa00338> { _asm_do_IRQ + 0x6c } RTS

   8 Target : <0xffa00330> { _asm_do_IRQ + 0x64 }

     Source : <0x000142f4> { __local_bh_enable + 0x40 } RTS

   9 Target : <0x000142b4> { __local_bh_enable + 0x0 }

     Source : <0x000143dc> { ___do_softirq + 0x9c } JUMP.L

  10 Target : <0x000143d4> { ___do_softirq + 0x94 }

     Source : <0x000143b8> { ___do_softirq + 0x78 } IF !CC JUMP

  11 Target : <0x0001439a> { ___do_softirq + 0x5a }

     Source : <0x000174a2> { _run_timer_softirq + 0x82 } RTS

  12 Target : <0x00017434> { _run_timer_softirq + 0x14 }

     Source : <0x000221f2> { _run_hrtimer_pending + 0xae } RTS

  13 Target : <0x000221e6> { _run_hrtimer_pending + 0xa2 }

     Source : <0x0002216c> { _run_hrtimer_pending + 0x28 } IF !CC JUMP

  14 Target : <0x00022162> { _run_hrtimer_pending + 0x1e }

     Source : <0x00022160> { _run_hrtimer_pending + 0x1c } JUMP.S

  15 Target : <0x00022144> { _run_hrtimer_pending + 0x0 }

     Source : <0x00022e16> { _hrtimer_run_pending + 0x4a } JUMP.L

Stack info:

SP: [0x01e89d60] <0x01e89d60> /* kernel dynamic memory */

FP: (0x01e89e78)

Memory from 0x01e89d60 to 01e8a000

01e89d60:[00000019]<000315c0> 01b43400  00000001  00000000  01b435e8  000040d0  00000001

01e89d80: 00000000  00156680  000000e4 <00031746> 000000a0  0012df48  01e88000 <000318e4>

01e89da0: 01b43400  0015b59c  00000124  00000086  01b43400  000000a0  0015b59c  00000000

01e89dc0: 01e89de0  00000048  000000fd  00000000  0012df48  01e89dbc  00000012  07a12002

01e89de0: 00000000  00000001 <00033904> 01b43400  001675ec  00000000  00000000  000040d0

01e89e00: 00000001  00000042  000240d0  000040d0  00000001  001675ec  00000001  00000048

01e89e20: 01e88000  01e88000  00000000  000240d0  01e88000  00000010  00000000  00000000

01e89e40: 00000000  00000000  00173960 <000339ae> 00000000  00002000  00002000  00000004

01e89e60: 04000021  00000000  00000003 <0003b1e0> 00000000  00000004 (00000000)<0003b434>

01e89e80:<0000a80e> 00000000  00000000  04000021  00000000  00000000  00000000  00000073

01e89ea0: 00000000  00176720  01e860e0  01b43400  00444a3c  00446ec4 <00003910> 00000000

01e89ec0: 00002000  00444a3c  01e88000  04000021  00000000  00000003  01b43400  0016a360

01e89ee0: 00158870  00000003  04000021  00000000 <ffa00878> 000038c8  000000c0  00000000

01e89f00: ffffe000  00000000  00000000  ffffe000  00000000  0000fffe  04000021  00000000

01e89f20: 00000000  00444c5a  00008000  00002000  00000000  01e8a000  00444c5a  00444c5a

01e89f40:<004446ee><ffa00ee4> 02003025  00612095  00444f11  0061208e  00444f10  00000000

01e89f60: 00000000  00000000  00000000  00000000  00000000  00000000  00000000  00000000

01e89f80: 00000000  00000000  00000000  00000000  00000000  00000000  00000000  00000000

01e89fa0: 00000000  00000000  00000000  01b3c004  00446e95  00446eb8  00446ec4  00000000

01e89fc0: 00444a3c  00444a3c  04000021  00000000  000000c0  00446eec  00002000  00000000

01e89fe0: 00000000  04000021  00000003  00002000  00000000  00000000  000000c0  00000006

01e8a000: 00001004

Return addresses in stack:

    address : <0x000315c0> { _oom_kill_process + 0xdc }

    address : <0x00031746> { _badness + 0xb2 }

    address : <0x000318e4> { _out_of_memory + 0x128 }

    address : <0x00033904> { ___alloc_pages_internal + 0x234 }

    address : <0x000339ae> { ___get_free_pages + 0x1e }

    address : <0x0003b1e0> { _do_mmap_pgoff + 0x39c }

   frame  1 : <0x0003b434> { _do_mmap_pgoff + 0x5f0 }

    address : <0x0000a80e> { _update_curr + 0x62 }

    address : <0x00003910> { _sys_mmap2 + 0x48 }

    address : <0xffa00878> { _system_call + 0x68 }

    address : <0x004446ee> [ mkfragment + 0x6ae ]

    address : <0xffa00ee4> { _evt_system_call + 0x64 }

Mem-Info:

DMA per-cpu:

CPU    0: hi:    0, btch:   1 usd:   0

Active_anon:0 active_file:823 inactive_anon:0

inactive_file:711 dirty:0 writeback:0 unstable:0

free:1024 slab:351 mapped:0 pagetables:0 bounce:0

DMA free:4096kB min:4096kB low:5120kB high:6144kB active_anon:0kB inactive_anon:0kB active_file:3292kB inactive_file:2844kB preso

lowmem_reserve[]: 0 0 0

DMA: 16*4kB 0*8kB 0*16kB 0*32kB 1*64kB 1*128kB 1*256kB 1*512kB 1*1024kB 1*2048kB 0*4096kB 0*8192kB 0*16384kB 0*32768kB = 4096kB

1534 total pagecache pages

7935 pages RAM

434 pages reserved

0 pages shared

6459 pages non-shared

Out of memory: kill process 144 (mkfragment) score 253 or a child

Killed process 144 (mkfragment)

Killed

root:/>

--

 

The last passed version:

--

root:/> version

kernel:    Linux release 2.6.28.7-ADI-2009R1-pre-svn6200, build #81 Thu Mar 19 03:32:20 CST 2009

toolchain: bfin-uclinux-gcc release gcc version 4.1.2 (ADI svn)

user-dist: release svn-7899, build #471 Thu Mar 19 03:31:01 CST 2009

--

 

 

The first failed version:

--

root:/> version

kernel:    Linux release 2.6.28.9-ADI-2009R1-pre-svn6255, build #6 Thu Apr 9 01:40:41 CST 2009

toolchain: bfin-uclinux-gcc release gcc version 4.1.2 (ADI svn)

user-dist: release svn-7968, build #21 Thu Apr 9 01:39:16 CST 2009

--

 

Follow-ups

 

--- Robin Getz                                               2009-07-10 14:22:31

Grace:

 

r6255 |  2009-04-08 05:05:44 -0400 (Wed, 08 Apr 2009)

r6200 |  2009-03-17 13:32:36 -0400 (Tue, 17 Mar 2009)

 

Is too big of a span (4 weeks) - can you narrow it down to a day (by bisecting

things)?

 

-Robin

 

--- Vivi Li                                                  2009-07-13 03:23:56

I tried and found that it failed since kernel version 6253. 6252 is fine.

 

--- Mike Frysinger                                           2009-07-13 03:27:27

really ?  6253 is tweaking Kconfig for EXCEPTION_L1_SCRATCH and you should end

up with the same binary there ...

 

if you build 6253 with EXCEPTION_L1_SCRATCH set to n, does it still fail ?

 

--- Vivi Li                                                  2009-07-13 04:27:02

Sorry, I don't find EXCEPTION_L1_SCRATCH in linux-2.6.x/.config.

 

--- Robin Getz                                               2009-07-13 08:02:14

It's easy to find out what is going on...

 

rgetz@imhotep:~/linux-2.6.x-2009> svn log -v -r 6253

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

r6253 | gyang | 2009-04-08 04:35:42 -0400 (Wed, 08 Apr 2009) | 1 line

Changed paths:

   M /trunk/arch/blackfin/Kconfig

 

Seems EXCEPTION_L1_SCRATCH should not depends on !SYSCALL_TAB_L1, remove it

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

 

rgetz@imhotep:~/linux-2.6.x-2009> svn diff -r 6252:6253

Index: arch/blackfin/Kconfig

===================================================================

--- arch/blackfin/Kconfig       (revision 6252)

+++ arch/blackfin/Kconfig       (revision 6253)

@@ -808,7 +808,7 @@

config EXCEPTION_L1_SCRATCH

        bool "Locate exception stack in L1 Scratch Memory"

        default n

-       depends on !APP_STACK_L1 && !SYSCALL_TAB_L1

+       depends on !APP_STACK_L1

        help

          Whenever an exception occurs, use the L1 Scratch memory for

          stack storage.  You cannot place the stacks of FLAT binaries

 

====================

 

In my default .config, I have:

CONFIG_APP_STACK_L1=y

 

Since we allow application stacks in L1 - this option does not show up. It is

not likely that this causes the bug...

 

--- Sonic Zhang                                              2009-07-15 02:38:31

Not a bug. The fragment test allocates 16856k bytes from system memory. The

recent kernel and ramfs occupied too much memory on bf533-ezkit witch has only

32M SDRAM. The solution is to disable some applications and kernel useless

drivers before run this fragment test.

 

--- Vivi Li                                                  2009-07-26 23:59:18

Release more memories for this case. It's the same problem for ltp test in

bf533-ezkit.

Fix it in test script.

 

--- Vivi Li                                                  2009-08-06 07:14:13

OK, Close it.

 

 

 

    Files

    Changes

    Commits

    Dependencies

    Duplicates

    Associations

    Tags

 

File Name     File Type     File Size     Posted By

config.mem_fragment    application/octet-stream    27167    Vivi Li

Attachments

Outcomes