freebsd-dev/stand/i386
Toomas Soome e307eb94ae loader: zfs should support bootonce an nextboot
bootonce feature is temporary, one time boot, activated by
"bectl activate -t BE", "bectl activate -T BE" will reset the bootonce flag.

By default, the bootonce setting is reset on attempt to boot and the next
boot will use previously active BE.

By setting zfs_bootonce_activate="YES" in rc.conf, the bootonce BE will
be set permanently active.

bootonce dataset name is recorded in boot pool labels, bootenv area.

in case of nextboot, the nextboot_enable boolean variable is recorded in
freebsd:nvstore nvlist, also stored in boot pool label bootenv area.
On boot, the loader will process /boot/nextboot.conf if nextboot_enable
is "YES", and will set nextboot_enable to "NO", preventing /boot/nextboot.conf
processing on next boot.

bootonce and nextboot features are usable in both UEFI and BIOS boot.

To use bootonce/nextboot features, the boot loader needs to be updated on disk;
if loader.efi is stored on ESP, then ESP needs to be updated and
for BIOS boot, stage2 (zfsboot or gptzfsboot) needs to be updated
(gpart or other tools).

At this time, only lua loader is updated.

Sponsored by:	Netflix, Klara Inc.
Differential Revision:	https://reviews.freebsd.org/D25512
2020-09-21 09:01:10 +00:00
..
boot0 Revert r362466 2020-06-22 07:46:24 +00:00
boot0sio
boot2 Remove tests for obsolete compilers in the build system 2020-05-12 15:22:40 +00:00
btx btx: rename .s files to .S to use Clang IAS 2018-11-26 19:14:33 +00:00
cdboot stand: remove CLANG_NO_IAS from cdboot 2019-08-15 17:32:39 +00:00
common boot2: need to expand tab output and mask getchar 2020-06-16 20:35:00 +00:00
gptboot loader: implement GELI writes 2020-07-11 06:51:42 +00:00
gptzfsboot loader: zfs should support bootonce an nextboot 2020-09-21 09:01:10 +00:00
isoboot Remove tests for obsolete compilers in the build system 2020-05-12 15:22:40 +00:00
libfirewire biospci_write_config args were backwards 2019-01-08 20:01:56 +00:00
libi386 loader: create single zfs nextboot implementation 2020-06-20 06:23:31 +00:00
loader loader: zfs should support bootonce an nextboot 2020-09-21 09:01:10 +00:00
loader_4th Update Makefile.depend files 2019-12-11 17:37:53 +00:00
loader_lua Create a loader for each interpreter for x86 BIOS and all EFI 2018-08-14 18:44:41 +00:00
loader_simp Create a loader for each interpreter for x86 BIOS and all EFI 2018-08-14 18:44:41 +00:00
mbr stand/i386: rename .s to .S to use Clang IAS 2018-12-03 19:16:34 +00:00
pmbr stand/i386: rename .s to .S to use Clang IAS 2018-12-03 19:16:34 +00:00
pxeldr Avoid using non-portable dd conv=osync option 2020-05-11 08:40:33 +00:00
zfsboot loader: zfs should support bootonce an nextboot 2020-09-21 09:01:10 +00:00
boot.ldscript Link stand/i386 components using a linker script 2020-03-04 21:01:22 +00:00
Makefile Remove kgzip and kgzldr. 2019-05-24 05:34:21 +00:00
Makefile.inc Link stand/i386 components using a linker script 2020-03-04 21:01:22 +00:00