On 5/27/05, Theo Gjaltema <gjalt007 at chello.nl> wrote: > > > Toolchain used: ELDK 2.0 > target processor: mpc862 > RAM: 64 Mbyte > Kernel: 2.4.20, extended with ATM/UTOPIA > init: /sbin/init -> /bin/busybox > > > (using a static linked busybox: activating a sh (=busybox) > ::sysinit:/bin/sh) > sh: /lib/ld.so.1 (note: /lib/ld.so.1 is a link to > /lib/ld.so.2.5.5, part of the ELDK 2.0 ) > < help page of ld.so.1> > sh: /lib/ld.so.1 --verify /bin/xxx (or just any dynamic linked executable) > <here the system has crahed> > > or > sh: /bin/xxx > <here the system has crashed> > > I have tried to step through the dynamic linking, but did not succeed > til after the creation of a thread. > With a dynamic linked busybox the system stops after a message such as > "freeing xxx kbytes" (I don't know the actual number by head) > When init is then called, which is a part of the busybox which is dyn. > liked, it crashes. > It's really hard to give any advice with the limited data. Do you get a kernel panic? Has the kernel crashed or has it become unresponsive. Making a large number of assumptions, it sounds like you've got a kernel problem, not a dynamic linking problem. Dynamic linking is handled 100% in user space. If init crashes (or is killed) you should get a kernel panic message. The fact that you get nothing says to me that dynamic linking is simply exposing a kernel bug.
A good place to start is to make sure all of memory is working. Try a simple test; allocate memory in an infinite loop and see where it breaks. Cheers, g.