mkelfImage initrd help
Don Elwell
don at bowery.com
Mon Mar 22 14:42:00 CET 2004
Hello,
Not sure if this is the right place for this question but I'm not sure
where else to send the message.
I'm having trouble booting a Linux kernel/initrd image. My original
goal was:
LinuxBIOS->Etherboot->Linux (single mkelfImage kernel/initrd)
In the course of troubleshooting this problem I'm working with one of
two configurations:
Original BIOS->Etherboot via Floppy->Linux (single mkelfImage
kernel/initrd).
and
Original BIOS->ISOLinux->Linux (separate kernel and initrd).
Booting the kernel/initrd via the CD-ROM works great. Booting via
Etherboot doesn't. I get kernel panics indicating that the kernel can't
mount its root fs.
I've modified the mkelfImage convert_params.c file to print out
everything. Just before the "Jumping to Linux" line, I added code to
print out the first 512 bytes of the initrd image. The values printed
match perfectly with the first 512 bytes of my initrd image. The kernel
table values for the initrd also look good: ramdisk at 0x800000.
I also added code in the Linux kernel do_mounts.c file (just after the
"RAMDISK: could not find valid ramdisk image") to print out the first
512 bytes of the buf buffer. At this point, the values in no way match
the values in the initrd image (nor to those printed out in
convert_params.c).
Anyone got any insight on what might be happening here or how to
continue debugging this?
Thanks,
-don
More information about the coreboot
mailing list