This needs to consider the boot -> kernel ABI carefully; currently it
looks like this breaks non-EFI boot with argv[2].
It doesn't. On non-EFI bootloader is 32-bit and so bootinfo and bootinfo32 are the same. Should I add the ctassert in non EFIBOOT case?