trying to debug my failure to start "init"
Robert P. J. Day
rpjday at mindspring.com
Thu Jun 10 23:00:30 EST 2004
On Thu, 10 Jun 2004, Mark Chambers wrote:
> > for more feedback, i added a printk() call to the run_init_process()
> > function in init/main.c to see what it thought it was doing.
>
> Maybe you should add a printout of errno, which the execve() inside of
> run_init_process() will set - might give an important clue.
did that, here are the results:
Freeing unused kernel memory: 52k init
Trying run_init_process with /sbin/minit
Error code from execve: -1
Errno: 2
Trying run_init_process with /sbin/init
Error code from execve: -1
Errno: 14
Trying run_init_process with /etc/init
Error code from execve: -1
Errno: 14
Trying run_init_process with /bin/init
Error code from execve: -1
Errno: 14
Trying run_init_process with /bin/sh
Error code from execve: -1
Errno: 14
Kernel panic: No init found. Try passing init= option to kernel.
if i read the include files correctly (include/asm-generic/errno*.h), i
read this as:
#define ENOENT 2 /* No such file or directory */
#define EFAULT 14 /* Bad address */
note that the error for minit is different from all the busybox errors.
the man page for execve() tells me this:
ENOENT The file filename or a script or ELF interpreter does not exist,
or a shared library needed for file or interpreter cannot be found.
EFAULT filename points outside your accessible address space.
so, i guess the next step is to compile minit statically and see what
happens.
rday
** Sent via the linuxppc-embedded mail list. See http://lists.linuxppc.org/
More information about the Linuxppc-embedded
mailing list