Hi, > > Realistically, the second option is unlikely to ever be used on x86, > > > > What would be needed to do so? Teach kexec-tools and grub2 parse and > > load zboot kernels I guess? > > I already implemented this for mach-virt here, so we can load Fedora > kernels without firmware: > > https://gitlab.com/qemu-project/qemu/-/commit/ff11422804cd03494cc98691eecd3909ea09ab6f > > On arm64, this is probably more straight-forward, as the bare metal > image is already intended to be booted directly like that. However, > the x86 uncompressed image requires surprisingly little from all the > boot_params/setup_header cruft to actually boot, so perhaps there it > is easy too. For existing boot loaders like grub I'd expect it being easy to code up, all the setup header code exists already, grub also has support for uncompressing stuff, so it should really be only zboot header parsing and some plumbing to get things going (i.e. have grub boot efi zboot kernels in bios mode). Disclaimer: didn't actually check grub source code. I suspect the bigger problem wrt. grub is that getting patches merged upstream is extremely slow and every distro carries a huge stack of patches ... take care, Gerd