myuboot@xxxxxxxxxxx wrote:
This looks like another boot file system setup problem to me. Are you sure that there's an executable init image at /mnt/root/sbin/init? I'm pretty sure that the path that you provide to your new init has to be relative to the new root.On Tue, 17 Nov 2009 10:33 +0100, "Ralf Baechle" <ralf@xxxxxxxxxxxxxx> wrote:On Mon, Nov 16, 2009 at 06:21:21PM -0600, myuboot@xxxxxxxxxxx wrote:I have been struggling to bring up a MIPS 32 board with busybox with or without initramfs. The kernel stucks there without the shell coming up. [ 1.153000] nf_conntrack version 0.5.0 (1024 buckets, 4096 max) [ 1.161000] ip_tables: (C) 2000-2006 Netfilter Core Team [ 1.167000] TCP cubic registered [ 1.170000] NET: Registered protocol family 17 [ 25.971000] Freeing unused kernel memory: 1032k freed [ 39.969000] Algorithmics/MIPS FPU Emulator v1.5 What I tried here is to use initramfs with statically linked busybox. The initramfs seems to be up, and runs the commands in the /init one by one, and then it goes to a inifite loop in r4k_wait at arch/mips/kernel/genex.S.r4k_wait is called by the idle loop. Which means the kernel has no process to run so runs the idle loop. This might be because there is no other process left running or because all processes are waiting for I/O for example. So it's not uncommon that even busy systems ocasionally briefly run the idle loop. In other words, seeing the processor executing r4k_wait does not necessarily mean something went wrong. In this case - also along with the other information you've provieded it's not obvious what has gone wrong. RalfAccording to an email from Kevin, I added a symbolic link from switch_root to busybox. The switch_root seems to be found now based on the execution sequence, but I got the following error - "Kernel panic - not syncing: Attempted to kill init!". This is the same error when I tried to start the shell without initramfs. Something must be wrong, but I can't quite figure out. [ 9.250000] Freeing unused kernel memory: 1032k freed [ 10.463000] Algorithmics/MIPS FPU Emulator v1.5 [ 41.695000] Kernel panic - not syncing: Attempted to kill init! [ 41.701000] Rebooting in 3 seconds. Thanks for your help. Andrew (gdb) c Continuing. Breakpoint 2, do_execve (filename=0x9780a000 "/init", argv=0x943dd2bc, envp=0x943dd230, regs=0x97819e30) at fs/exec.c:1293 1293 retval = unshare_files(&displaced); (gdb) c Continuing. Breakpoint 2, do_execve (filename=0x9780a000 "/sbin/switch_root", argv=0x4f7450, envp=0x4f7464, regs=0x97819f30) at fs/exec.c:1293 1293 retval = unshare_files(&displaced); (gdb) c Continuing. Kevin K. |