[#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(®_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