[#7300] kernel build with busybox 1.20 by trunk head toolchain and uClibc 0.9.33.2 boot up fails

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

[#7300] kernel build with busybox 1.20 by trunk head toolchain and uClibc 0.9.33.2 boot up fails

Submitted By: Mingquan Pan

Open Date

2012-08-31 02:08:57     Close Date

2012-10-08 05:08:12

Priority:

High     Assignee:

Mingquan Pan

Sonic Zhang

Stuart Henderson

Board:

N/A     Silicon Revision:

Resolution:

Fixed     Fixed In Release:

N/A

Processor:

ALL     

Host Operating System:

toolchain rev.:

    kernel rev.:

State:

Closed     Found In Release:

2012R2

Is this bug repeatable?:

N/A     

Summary: kernel build with busybox 1.20 by trunk head toolchain and uClibc 0.9.33.2 boot up fails

Details:

 

kernel build with busybox 1.20 by trunk head toolchain boot up fails.

 

## Booting kernel from Legacy Image at 01000000 ...

   Image Name:   bf609-0.0-3.5.0-ADI-2012R1-pre-0

   Image Type:   Blackfin Linux Kernel Image (gzip compressed)

   Data Size:    8942598 Bytes = 8.5 MiB

   Load Address: 00001000

   Entry Point:  0028da80

   Verifying Checksum ... OK

   Uncompressing Kernel Image ... OK

Starting Kernel at = 0028da80

Linux version 3.5.0-ADI-2012R1-pre-00831-g3fee378-dirty (test@test-OptiPlex-390) (gcc version 4.3.5 (ADI-trunk/svn-5865) ) #2 Fri Aug 31 13:23:10 CST 2012

register early platform devices

bootconsole [early_shadow0] enabled

ERROR: Not running on ADSP-BF609: unknown CPUID 0x0000 Rev 0.0

bootconsole [early_BFuart0] enabled

early printk enabled on early_BFuart0

Board Memory: 128MB

Kernel Managed Memory: 128MB

Memory map:

  fixedcode = 0x00000400-0x00000490

  text      = 0x00001000-0x001becb0

  rodata    = 0x001becd4-0x0024eb10

  bss       = 0x0024f000-0x00262314

  data      = 0x00262320-0x0028a000

    stack   = 0x00288000-0x0028a000

  init      = 0x0028a000-0x009ce000

  available = 0x009ce000-0x07f00000

  DMA Zone  = 0x07f00000-0x08000000

Hardware Trace active and enabled

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

Compiled for ADSP-BF609 Rev 0.0

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

Processor Speed: 500 MHz core clock, 100 MHz SCLk, 100 MHz SCLK0, 100 MHz SCLK1 and 250 MHz DCLK

NOMPU: setting up cplb tables

Instruction Cache Enabled for CPU0

  External memory: cacheable in instruction cache

  L2 SRAM        : uncacheable in instruction cache

Data Cache Enabled for CPU0

  External memory: cacheable (write-back) in data cache

  L2 SRAM        : uncacheable in data cache

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

Kernel command line: root=/dev/mtdblock0 rw clkin_hz=(25000000) earlyprintk=serial,uart0,57600 console=ttyBF0,57600 ip=10.100.4.50:10.100.4.174:192.168.0.1:255.255.255.0:bf609-ezkit:eth0:off

PID hash table entries: 512 (order: -1, 2048 bytes)

Dentry cache hash table entries: 16384 (order: 4, 65536 bytes)

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

Memory available: 118840k/131072k RAM, (7440k init code, 1783k kernel code, 813k data, 1024k dma, 1172k reserved)

NR_IRQS:299

Configuring Blackfin Priority Driven Interrupts

console [ttyBF0] enabled, bootconsole disabled

console [ttyBF0] enabled, bootconsole disabled

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

pid_max: default: 32768 minimum: 301

Mount-cache hash table entries: 512

devtmpfs: initialized

Blackfin Scratchpad data SRAM: 4 KB

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

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

Blackfin L1 Instruction SRAM: 64 KB (51 KB free)

Blackfin L2 SRAM: 256 KB (256 KB free)

NET: Registered protocol family 16

Blackfin DMA Controller

ezkit_init(): registering device resources

ezkit_init(): request emac pins failed

bio: create slab <bio-0> at 0

SCSI subsystem initialized

bfin-spi bfin-spi.0: master is unqueued, this is deprecated

bfin-spi bfin-spi.0: bfin-spi probe success

bfin-spi bfin-spi.1: master is unqueued, this is deprecated

bfin-spi bfin-spi.1: bfin-spi probe success

usbcore: registered new interface driver usbfs

usbcore: registered new interface driver hub

usbcore: registered new device driver usb

i2c-bfin-twi i2c-bfin-twi.0: Blackfin on-chip I2C TWI Contoller, regs_base@ffc01e00

i2c-bfin-twi i2c-bfin-twi.1: Blackfin on-chip I2C TWI Contoller, regs_base@ffc01f00

NET: Registered protocol family 23

Switching to clocksource bfin_cs_cycles

NET: Registered protocol family 2

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

TCP established hash table entries: 4096 (order: 3, 32768 bytes)

TCP bind hash table entries: 4096 (order: 2, 16384 bytes)

TCP: Hash tables configured (established 4096 bind 4096)

TCP: reno registered

UDP hash table entries: 256 (order: 0, 4096 bytes)

UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)

NET: Registered protocol family 1

msgmni has been set to 232

io scheduler noop registered (default)

bfin-uart: Blackfin serial driver

bfin-uart.0: ttyBF0 at MMIO 0xffc02000 (irq = 96) is a BFIN-UART

physmap platform flash device: 01000000 at b0000000

physmap-flash.0: Found 1 x16 devices at 0x0 in 16-bit bank. Manufacturer ID 0x000089 Chip ID 0x008821

Intel/Sharp Extended Query Table at 0x010A

Intel/Sharp Extended Query Table at 0x010A

Intel/Sharp Extended Query Table at 0x010A

Intel/Sharp Extended Query Table at 0x010A

Intel/Sharp Extended Query Table at 0x010A

Using buffer write method

Using auto-unlock on power-up/resume

cfi_cmdset_0001: Erase suspend on write enabled

Creating 3 MTD partitions on "physmap-flash.0":

0x000000000000-0x000000080000 : "bootloader(nor)"

0x000000080000-0x000000480000 : "linux kernel(nor)"

0x000000480000-0x000001000000 : "file system(nor)"

m25p80 spi0.1: w25q32 (4096 Kbytes)

Creating 3 MTD partitions on "m25p80":

0x000000000000-0x000000080000 : "bootloader(spi)"

0x000000080000-0x000000200000 : "linux kernel(spi)"

0x000000200000-0x000000400000 : "file system(spi)"

CAN device driver interface

bfin_can bfin_can.0: bfin_can device registered(&reg_base=ffc00a00, rx_irq=55, tx_irq=56, err_irq=57, sclk=100000000)

        DWMAC100

No HW DMA feature register supported

Enhanced/Alternate descriptors

RX IPC Checksum Offload not configured.

stmmac_dvr_probe: warning: cannot get CSR clock

stmmac: probed

eth0: PHY ID 20005c90 at 1 IRQ 0 (stmmac-0:01) active

Initializing USB Mass Storage driver...

usbcore: registered new interface driver usb-storage

USB Mass Storage support registered.

musb-hdrc: version 6.0, ?dma?, otg (peripheral+host)

input: bfin-rotary as /devices/platform/bfin-rotary/input/input0

i2c /dev entries driver

bfin_wdt: initialized: timeout=20 sec (nowayout=0)

dma_alloc_init: dma_page @ 0x0540e000 - 256 pages at 0x07f00000

usbcore: registered new interface driver usbhid

usbhid: USB HID core driver

TCP: cubic registered

NET: Registered protocol family 17

can: controller area network core (rev 20090105 abi 8)

NET: Registered protocol family 29

eth0: device MAC address 06:72:82:ba:e9:17

No MAC Management Counters available

IP-Config: Gateway not on directly connected network

Freeing unused kernel memory: 7440k freed

Kernel panic - not syncing: Attempted to kill init! exitcode=0x00000100

 

Hardware Trace:

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

     Source : <0x001bea04> { _panic + 0x68 } CALL pcrel

   1 Target : <0x001be9f2> { _panic + 0x56 }

     Source : <0x0000c3b2> { _test_taint + 0x2a } RTS

   2 Target : <0x0000c388> { _test_taint + 0x0 }

     Source : <0x001be9ee> { _panic + 0x52 } JUMP.L

   3 Target : <0x001be9ec> { _panic + 0x50 }

     Source : <0x001bebaa> { _printk + 0x26 } RTS

   4 Target : <0x001beba6> { _printk + 0x22 }

     Source : <0x0000e406> { _vprintk_emit + 0x11e } RTS

   5 Target : <0x0000e3fe> { _vprintk_emit + 0x116 }

     Source : <0xffa00d30> { __common_int_entry + 0xcc } RTI

   6 Target : <0xffa00cce> { __common_int_entry + 0x6a }

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

   7 Target : <0xffa00b18> { _return_from_int + 0x58 }

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

   8 Target : <0xffa00ac0> { _return_from_int + 0x0 }

     Source : <0xffa00cca> { __common_int_entry + 0x66 } JUMP.L

   9 Target : <0xffa00cc8> { __common_int_entry + 0x64 }

     Source : <0xffa00fa8> { _do_irq + 0x1c } RTS

  10 Target : <0xffa00fa2> { _do_irq + 0x16 }

     Source : <0xffa00474> { _asm_do_IRQ + 0x60 } RTS

  11 Target : <0xffa0046c> { _asm_do_IRQ + 0x58 }

     Source : <0x00012672> { _irq_exit + 0x4a } RTS

  12 Target : <0x0001266e> { _irq_exit + 0x46 }

     Source : <0x0003c13c> { _rcu_irq_exit + 0x4c } RTS

  13 Target : <0x0003c136> { _rcu_irq_exit + 0x46 }

     Source : <0x0003c128> { _rcu_irq_exit + 0x38 } IF CC JUMP pcrel (BP)

  14 Target : <0x0003c126> { _rcu_irq_exit + 0x36 }

     Source : <0x0003c094> { _rcu_idle_enter_common + 0x38 } RTS

  15 Target : <0x0003c08e> { _rcu_idle_enter_common + 0x32 }

     Source : <0x0003c072> { _rcu_idle_enter_common + 0x16 } IF !CC JUMP pcrel

Stack info:

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

FP: (0x0401ff04)

Memory from 0x0401fe60 to 04020000

0401fe60: 00000000 [00000000] 0401fe88  001bea08  00010e08  00207e2c  0000f80a  002532bc

0401fe80: 00000001  0401feb0  0401fed4  00010c28  00010e08  00000001  0401dd60  0401dd60

0401fea0: ffffe000  054af728  054b8c50  0401dd60  00000100  00000008  00000000  0401fec8

0401fec0: 00269230  00000001  0401fec8  0401fec8  0401de80  0401ff04  00010e14  00010e08

0401fee0: 00000001  054b8b00  00000000  ffffe000  054af728  054b8c50  00000000  00000000

0401ff00: 00000000 (00000000)<ffa0097e> 00000000  00000000  00000000  000067e0  054b8c50

0401ff20: 054af728  054bce58  00008000  00000000  00000000  04020000  054bce58  054bce58

0401ff40:<054bcda0> ffa00f6a  00002002  054bcd6b  00000001  054bcd6a  00000000  00000000

0401ff60: 00000000  00000000  00000000  00000000  00000000  00000000  00000000  00000000

0401ff80: 00000000  00000000  00000000  00000000  00000000  00000000  00000000  00000000

0401ffa0: 00000000  00000000  00000000  00000001  000002b8  054dfd04  054dfea0  054dff80

0401ffc0: 000001c8  054b8b00  054dff80  00000000  00000001  00000002  00000117  054af728

0401ffe0: 054b8c50  000067e0  0000001b  054b8bf0  00000001  00000001  00000001  00002806

Return addresses in stack:

   frame  1 : <0xffa0097e> { _system_call + 0x6a }

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

 

Follow-ups

 

--- Sonic Zhang                                              2012-09-10 07:33:27

There are 2 issues in the new uClibc 0.9.33.2.

One is the vfork blackfin implementation is missing.

The other is the FDPIC dynamic library loader is not compatible with the FDPIC

dynamic library generated by Blackfin GNU toolchain.

 

--- Sonic Zhang                                              2012-09-21 02:29:25

Now FDPIC buildroot Linux image can boot up on bf609 with 2 patches attached.

Patch 1 shows where the FDPIC library loader crash occurs.

Patch 2 changes the type of var i from unsigned int to int. The following loop

is a decreasing loop, stop condition “i>=0” always meets in case of

unsigned int.

 

--- Stuart Henderson                                         2012-09-25 09:38:18

this should be fixed now.

 

--- Mingquan Pan                                             2012-10-08 06:09:39

Yes, it boots up now. Close.

 

 

 

    Files

    Changes

    Commits

    Dependencies

    Duplicates

    Associations

    Tags

 

File Name     File Type     File Size     Posted By

uClibc-0.3.99.2-2.patch    application/octet-stream    398    Sonic Zhang

uClibc-0.3.99.2-1.patch    application/octet-stream    454    Sonic Zhang

Outcomes