[prev in list] [next in list] [prev in thread] [next in thread]
List: busybox
Subject: [BusyBox] Linux goes to sleep, instead of running tinylogin.
From: "Ulf Samuelsson" <ulf () atmel ! com>
Date: 2004-08-29 22:55:38
Message-ID: 005c01c48e1b$5debc450$0ac4af0a () atmel ! com
[Download RAW message or body]
Have built busybox-1.00-rc3 as part of a ramdisk for my AT91RM9200DK.
Running Kernel 2.4.26-vrs1
The boot process seems to run normally in the beginning, but then fails.
I have some kernel logging showing that the following happens.
/sbin/init is executed (starting busybox)
Buysbox parses inittab containing the following commands (Sysinit)
/bin/mount -o remount,rw / OK
/bin/mount -t proc proc /proc OK
/bin/mount -a OK
/bin/hostname -F /etc/hostname
... suddenly the CPU registers are printed out
/sbin/ifconfig lo 127.0.0.1 up OK
/sbin/ifconfig add -net 127.0.0.0 netmask 255.0.0.0 lo OK
/etc/init.d/rcS
... suddenly the CPU registers are printed out
/sbin/getty 38400 tty1
... not visible in my logs
/sbin/getty 38400 tty2
... not visible in my logs
/etc/init.d/rcS
... suddenly the CPU registers are printed out
/bin/touch /var/log/messages
... suddenly the CPU registers are printed out
/sbin/syslogd OK
/sbin/klogd -n OK
Busybox then continues doing
- Blocking actions
- Run once
and goes to sleep - PERMANENTLY
===================
Two major problems:
1) Prints out registers
2) No login prompt.
I then modified inittab to respawn a getty process for the serial port
(ttyS0)
/sbin/getty -L ttyS0 115200 vt100
Also tried
/sbin/getty -i 115200 ttyS0
and this now respawns but everytime it starts I get the same damn register
dump.
No login prompt.
Anyone knows what to do to get a login prompt`?
I have not made any changes to the /etc/inittab except for above.
Do I need to change anything else in the /etc/inittab?
I removed the dependency on the nss libs and nsswitch.conf from the
tinylogin build.
As I can see it the calling tree in busybox is
init_main
run_actions
waitfor
run
...
execv
????
do_execve is executed and completed
(control passed to linux in fs/exec.c)
<somewhere here the register dump occurs>
waitpid
delete_init_actions
I have been trying to find what exactly "execv" does, but cannot find it
anywhere.
Looked in the Linux kernel. no luck.
Searched the complete "buildroot/build_arm" directory and no luck.
earched the toolchain directory. Only reference there is to a dummy routine.
Since execv calls do_execve, this is obviously not it...
Apparently execv exists somewhere and calls "do_execve"
but what happens afterwards?
-----
Anyone got a clue why registers are printed out for /bin/hostname,
/bin/touch etc?
Anyone knows where execv for the arm architecture is located?
How and Where is tinylogin started?
Why does init go to sleep?
Best Regard
Ulf Samuelsson
_______________________________________________
busybox mailing list
busybox@mail.busybox.net
http://codepoet.org/mailman/listinfo/busybox
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic