Howdy Folks,
Just an update, the kernel from Heads (4.14.56) + CONFIG_EFI_BDS
worked out OK. I'm kind of curious what the recommended direction on
this is. FWIW I'm kicking all these tires using qemu, not real
hardware.
The u-root initramfs was super easy to create. Need to inspect a bit
more what all init is doing there. Very nice!
For those who come next, a couple of gotchas I ran into:
. size of kernel and initramfs -- building linuxboot would fail,
ultimately because the kernel + initramfs were too large. For the
qemu machine the combined limit was about 10MB (not sure why, future
digging). Turns out compressing the u-root initramfs is a good idea.
Also using xz compression on the kernel helps.
For qemu I've always like using the serial console and the qemu
monitor. To that end these help:
. kernel command line -- add "console=ttyS0,115200n8"
. qemu monitor -- add "-monitor stdio"
. qemu serial -- add "-serial telnet:localhost:9005,server"
I like the --serial option with "server" as the vm waits for the
telnet connection before. The full qemu command line:
qemu-system-x86_64 -nographic -monitor stdio \
-serial telnet:localhost:9005,server \
-machine q35,smm=on -global ICH9-LPC.disable_s3=1 \
-global driver=cfi.pflash01,property=secure,value=on \
-drive if=pflash,format=raw,unit=0,file=/work/curt/src/linuxboot/build/qemu/linuxboot.rom
Cheers,
Curt