[ELDK] Kernel Panic on init

Hart Jr., Glenn G hartgg at westinghouse.com
Tue Sep 25 19:25:08 CEST 2012

I am using ELDK 4.1 to cross compile Linux for the powerpc (44x) on a Xilinx FPGA.  I was able to get the kernel to compile, but it now stops after trying to start init.  Below is the output from the debug terminal:

It seems init is crashing and therefore the kernel panics.  I am using a hello_world.c program to test init.  I compile the program with gcc -static hello_world.c -o init.  I used this init in my initramfs and my output is below.  Anybody know what I am doing wrong?

Linux version 2.6.37 (root at fedora) (gcc version 4.0.0 (DENX ELDK 4.1 4.0.0)) #40
PREEMPT Tue Sep 25 09:45:46 EDT 2012
Zone PFN ranges:
  DMA      0x00000000 -> 0x00004000
  Normal   empty
Movable zone start PFN for each node
early_node_map[1] active PFN ranges
    0: 0x00000000 -> 0x00004000
MMU: Allocated 1088 bytes of context maps for 255 contexts
Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 16256
Kernel command line: console=ttyUL0 init=/init
PID hash table entries: 256 (order: -2, 1024 bytes)
Dentry cache hash table entries: 8192 (order: 3, 32768 bytes)
Inode-cache hash table entries: 4096 (order: 2, 16384 bytes)
Memory: 57564k/65536k available (6040k kernel code, 7972k reserved, 160k data, 1
098k bss, 3304k init)
Kernel virtual memory layout:
  * 0xfffdf000..0xfffff000  : fixmap
  * 0xfde00000..0xfe000000  : consistent mem
  * 0xfde00000..0xfde00000  : early ioremap
  * 0xd1000000..0xfde00000  : vmalloc & ioremap
Preemptable hierarchical RCU implementation.
        RCU-based detection of stalled CPUs is disabled.
        Verbose stalled-CPUs detection is disabled.
clocksource: timebase mult[a00000] shift[22] registered
Console: colour dummy device 80x25
pid_max: default: 32768 minimum: 301
Mount-cache hash table entries: 512
NET: Registered protocol family 16
bio: create slab <bio-0> at 0
Switching to clocksource timebase
NET: Registered protocol family 2
IP route cache hash table entries: 1024 (order: 0, 4096 bytes)
TCP established hash table entries: 2048 (order: 2, 16384 bytes)
TCP bind hash table entries: 2048 (order: 1, 8192 bytes)
TCP: Hash tables configured (established 2048 bind 2048)
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
ROMFS MTD (C) 2007 Red Hat, Inc.
msgmni has been set to 114
io scheduler noop registered
io scheduler deadline registered
io scheduler cfq registered (default)
Serial: 8250/16550 driver, 4 ports, IRQ sharing disabled
84000000.serial: ttyUL0 at MMIO 0x84000000 (irq = 0) is a uartlite
console [ttyUL0] enabled
brd: module loaded
loop: module loaded
Device Tree Probing 'ethernet'
of:xilinx_lltemac ff800000.ethernet: MAC address is now  0: a:35:3b:c0: 0
of:xilinx_lltemac ff800000.ethernet: XLlTemac: using DMA mode.
XLlTemac: DCR address: 0x80
XLlTemac: buffer descriptor size: 32768 (0x8000)
XLlTemac: Allocating DMA descriptors with kmalloc
XLlTemac: (buffer_descriptor_init) phy: 0x30a0000, virt: 0xc30a0000, size: 0x800
XTemac: PHY detected at address 1.
eth0: Dropping NETIF_F_SG since no checksum feature.
of:xilinx_lltemac ff800000.ethernet: eth0: Xilinx TEMAC at 0xFF800000 mapped to
0xD1016000, irq=16
mice: PS/2 mouse device common for all mice
TCP cubic registered
NET: Registered protocol family 17
Freeing unused kernel memory: 3304k init
in init_post
Kernel panic - not syncing: Attempted to kill init!
Call Trace:
[c3827e10] [c0006488] show_stack+0x48/0x168 (unreliable)
[c3827e40] [c002f5c8] panic+0xb0/0x1f0
[c3827ee0] [c0032d50] do_group_exit+0x0/0xc4
[c3827f20] [c0032d94] do_group_exit+0x44/0xc4
[c3827f30] [c0032e28] sys_exit_group+0x14/0x28
[c3827f40] [c000c0b4] ret_from_syscall+0x0/0x3c
--- Exception: c01 at 0x10009604
    LR = 0x10000c7c
Rebooting in 180 seconds..

More information about the eldk mailing list