init hangs

Saravanan Chanemouganandam schane at osmozis.com
Thu Nov 29 14:24:34 UTC 2007


Hello,

Yes. I got messed up with EABI and non EABI selection and my kernel (2.6.16) 
was built with non EABI but trying to build Buildroot busybox with EABI 
option which is wrong. 

Well, I have rebuilt again the buildroot with OABI option enabled which leaves 
me the toolchain arm-linux-uclibc-gcc   
schane:/home/sara/BuildRoot/buildroot# /home/sara/BuildRoot/buildroot/build_arm/staging_dir/usr/bin/arm-linux-uclibc-gcc 
-v
Using built-in specs.
Target: arm-linux-uclibc
Configured 
with: /home/sara/BuildRoot/buildroot/toolchain_build_arm/gcc-4.2.1/configure 
--prefix=/usr --build=i386-pc-linux-gnu --host=i386-pc-linux-gnu 
--target=arm-linux-uclibc --enable-languages=c,c++ 
--with-sysroot=/home/sara/BuildRoot/buildroot/build_arm/staging_dir 
--with-build-time-tools=/home/sara/BuildRoot/buildroot/build_arm/staging_dir/usr/arm-linux-uclibc/bin 
--disable-__cxa_atexit --enable-target-optspace --with-gnu-ld --enable-shared 
--with-gmp=/home/sara/BuildRoot/buildroot/toolchain_build_arm/gmp 
--with-mpfr=/home/sara/BuildRoot/buildroot/toolchain_build_arm/mpfr 
--disable-nls --enable-threads --disable-multilib --with-float=soft 
--disable-largefile
Thread model: posix
gcc version 4.2.1

But still, the statically built "helloworld" with arm-linux-uclibc-gcc doesn't 
show any message during bootup using init=/sbin/helloworld . 

Meanwhile, I have also built the rootfs with busybox compiled using scratchbox 
toolchain "/scratchbox/compilers/arm-gcc3.4-uclibc0.9.28/bin/arm-linux-gcc " 
and the system boots well using init=/bin/ash and got the ash# prompt. 

To test the above, I then transfered the "helloworld" built with Buildroot 
toolchain to the running system and I can see the "Hello world !!!!" display 
message and cancelled to turn to # prompt.

Still, I am confused why the same "helloworld" doesn't display during bootup 
after Freeing init memory: 108K

Any idea to fix this issue further ? Did I missed any other options?

Sara






Le Mercredi 28 Novembre 2007 18:33, Brian Austin a écrit :
> Correct.
>
> You are mixing EABI and non EABI.  You should build (if your doin EABI)
> your toolchain with 2.6.16 or greater headers.
>
> The main reason, from my experiences a while back, with init in busybox
> hanging and using EABI was that either the kernel was built with EABI
> and busybox was not or the opposite.
>
> On Wed, 2007-11-28 at 09:09 -0800, Denys Vlasenko wrote:
> > On Tuesday 27 November 2007 07:02, Saravanan Chanemouganandam wrote:
> > > Hello vda,
> > >
> > > I have still a panic with the buildroot uclibc cross toochain. "Hello
> > > world" compiled with the following "gcc" dispalys message on the ARM
> > > target "arm5vte"
> > >
> > > schane:/#
> > > /scratchbox/compilers/arm-gcc-3.3.4-glibc-2.3.2/bin/arm-linux-gcc -v
> > > Reading specs
> > > from
> > > /scratchbox/compilers/arm-gcc-3.3.4-glibc-2.3.2/lib/gcc-lib/arm-linux/3
> > >.3.4 /specs Configured
> > > with:
> > > /home/tsavola/sb-toolchains/gcc/glibc/work/gcc-3.3-3.3.4-patched/config
> > >ure --target=arm-linux --host=i386-linux --build=i386-linux
> >
> >            ^^^^^^^^^
> >
> > > --prefix=/scratchbox/compilers/arm-gcc-3.3.4-glibc-2.3.2
> > > --with-headers=/scratchbox/compilers/arm-gcc-3.3.4-glibc-2.3.2/usr/incl
> > >ude --enable-languages=c,c++ --program-transform-name=s/^-/arm-linux-/
> > > --program-prefix=arm-linux- --with-cpu=
> > > Thread model: posix
> > > gcc version 3.3.4 (Debian)
> > >
> > > whereas it doesn't display cross compiled with the following "uclibc"
> > >
> > > schane:/#
> > > /home/sara/BuildRoot/buildroot/build_arm/staging_dir/bin/arm-linux-gcc
> > > -v Using built-in specs.
> > > Target: arm-linux-uclibcgnueabi
> > > Configured
> > > with:
> > > /home/sara/BuildRoot/buildroot/toolchain_build_arm/gcc-4.1.2/configure
> > > --prefix=/home/sara/BuildRoot/buildroot/build_arm/staging_dir
> > > --build=i386-pc-linux-gnu --host=i386-pc-linux-gnu
> > > --target=arm-linux-uclibcgnueabi--enable-languages=c
> > > --disable-__cxa_atexit
> >
> >            ^^^^^^^^^^^^^^^^^^^^^^^
> >
> > > --enable-target-optspace --with-gnu-ld --disable-shared --disable-nls
> > > --enable-threads --disable-multilib --with-float=soft
> > > --disable-largefile Thread model: posix
> > > gcc version 4.1.2
> > >
> > > Is this issue due to a floating point option or kernel headers ? I have
> > > built buildroot toochain with kernel-header 2.6.12 for my linux kernel
> > > 2.6.16 and with soft float option enabled.
> >
> > I'm no expert on ARM, but I do know that EABI and "old" ABI have
> > a bit different calling conventions, including kernel syscalls
> > calling conventions.
> >
> > Your 'working' toolchain and 'failing' tollchain have different
> > --target's. --
> > vda
> > _______________________________________________
> > busybox mailing list
> > busybox at busybox.net
> > http://busybox.net/cgi-bin/mailman/listinfo/busybox



More information about the busybox mailing list