help with elf format
I have a problem that I'm out of my depth with, and was wondering if anyone could offer some suggestions on how to go foraward.
I have recently upgraded to the 2.6.30 kernel, and after that, I decided to update the toolchain (to GCC 4.4.2). The problem is that with the new toolchain, busybox (and any other program I've tried) exits immediately with a code 11 (SIGSEGV). (which causes a kernel panic, as it's the init task)
Everything works fine with the old toolchain, but as soon as I switch toolchains, I get my crash.
I did a dump of the elf file headers, and the only differences I found in the header were:
e_shentsize=9 (I'm not sure if this is a problem)
Also, and objdump shows a stack section in the new toolchain which did not show up in the old one:
STACK off 0x00000000 vaddr 0x00000000 paddr 0x00000000 align 2**2
filesz 0x00000000 memsz 0x00000000 flags rwx
My platform is a mips board. I've tried everything I can think of, but still have no clue why this does not work.
If anyone has any clues, I would be very greatful.
Changing the toolchain has changed many of the standard shard libraries as well. You will probably need to recompile the universe (at least the kernel) to get the system to work properly. Good luck...
I have tried recompiling the kernel (using make clean; make...), as it is the kernel it is I'm trying to rebuild. I've been off of this the past three weeks, but now I'm back on it.
In the time I've had to dig into this since my last post I discovered that it is the busybox application which is crashing, right after it's started (I'm using an old modified version of busybox, but in my mind, it shouldn't make a difference. I tried replacing the first lines of code in the busybox application with a printf followed by a while loop with pauses, but it still crashes without printing anything out). Again, if anyone has any ideas, I would love to hear them.