https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=279829
--- Comment #9 from Warner Losh <i...@freebsd.org> --- OK. I've thought through this. We have two strategies here. This is kinda not a bug, but also kinda a huge big rock sticking out for people to trip over that we should do something about, since we've known about it for a while now... (1) People Must Upgrade. Sorry, but they have to. We can't support the long dead hand of the past forever. (2) We Must Document How. We do already, but it needs be greatly improved. Now, having said (1) and (2) there's way too much friction for both. So I'm proposing the following (a) We add a version number checking to the lua scripts. The boot loader already has a loader_version (4th) or loader.version (lua) exported. This is the boot program revision. Right now it's among the jankiest jank[1] still in the jankville part of the boot loader. Proposal: Bump this to 2.0 everywhere. Nobody cares today, really, what it is, but 2.0 is a good starting point. I also propose exporting loader.freebsd_version (being the __FreeBSD_version of the build environment (usually the sources used to build it except). We also compile these version into a vers.lua ala vers.c. We enhance loader.lua to warn if freebsd_version mismatches with the loader. The warning will be "This is old, smelly code, update to new shiny code ASAP, but maybe this will work out for you, good luck with that" or similar, perhaps more word smithed: loader.efi is $loader_freebsd_v than the system you are booting $lua_freebsd_v This may or may not work, please upgrade your ESP. Also, if loader major rev rev != loader rev, and we can read the new root filesystem, and it's EFI and we find a /boot/loader.efi on the new root filesystem, chain load that if the root filesystem != the image location we got the loader.efi from. Proclaim even louder that an upgrade is needed :). But this will get people over the hump if they have really really old loader with shiny new lua scripts. Still working out some of the technical details on this one. Also, all 'backwards compat' workarounds should explicitly whine when they are used so people know they have stale loader(s) afoot. For (2) we need to put it in the loader.efi man page, which is it's how horror show right now. We likely also need a (3) script to update boot blocks no matter where they are, since we've grown at least 4 supported environments that are various forms of popular (x86 BIOS MBR, x86 BIOS GPT, EFI and UBOOT+EFI) that we should cover. We should also strongly encourage people to move to a more standard layout and also look to adding this to installworld (perhaps optionally at first). (2) and (3) are needed to solve the ZFS problem (which we can't just chain-boot away, though other counter measures are needed). [1] https://www.dictionary.com/e/slang/janky/ -- You are receiving this mail because: You are the assignee for the bug.