[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