Page MenuHomeFreeBSD

Allow loader.efi to identify non-standard boot setup
ClosedPublic

Authored by sjg on Oct 16 2019, 9:37 PM.
Tags
None
Referenced Files
Unknown Object (File)
Sun, Apr 14, 4:09 AM
Unknown Object (File)
Mon, Apr 8, 7:08 PM
Unknown Object (File)
Jan 13 2024, 6:01 PM
Unknown Object (File)
Jan 10 2024, 1:56 AM
Unknown Object (File)
Jan 8 2024, 2:20 PM
Unknown Object (File)
Jan 6 2024, 10:13 PM
Unknown Object (File)
Dec 26 2023, 7:41 AM
Unknown Object (File)
Dec 14 2023, 1:21 PM

Details

Summary

PATH_BOOTABLE_TOKEN can be set to a non-standard
path that identifies a device as bootable.

Diff Detail

Repository
rS FreeBSD src repository - subversion
Lint
Lint Passed
Unit
No Test Coverage
Build Status
Buildable 27077
Build 25359: arc lint + arc unit

Event Timeline

Just curious what is this a fix for? I assume some specific type or class of hardware.

Just curious what is this a fix for? I assume some specific type or class of hardware.

Downstream OS/vendors that don't have /boot/defaults/loader.conf or /boot/kernel/kernel because they store all of this elsewhere as part of a versioned boot scheme (or something to this effect) -- they'd then define PATH_BOOTABLE_TOKEN as another path to check to determine if this is a valid rootfs.

This revision is now accepted and ready to land.Oct 17 2019, 5:31 PM

Downstream OS/vendors that don't have /boot/defaults/loader.conf or /boot/kernel/kernel because they store all of this elsewhere as part of a versioned boot scheme (or something to this effect) -- they'd then define PATH_BOOTABLE_TOKEN as another path to check to determine if this is a valid rootfs.

So how does the loader find the loader.conf and kernel to load? Should users set a different PATH_KERNEL?

Downstream OS/vendors that don't have /boot/defaults/loader.conf or /boot/kernel/kernel because they store all of this elsewhere as part of a versioned boot scheme (or something to this effect) -- they'd then define PATH_BOOTABLE_TOKEN as another path to check to determine if this is a valid rootfs.

So how does the loader find the loader.conf and kernel to load? Should users set a different PATH_KERNEL?

loader.conf really isn't all that necessary, to be honest. For EFI, one can use the mechanism imp added to salt the environment from a file on the ESP. That file can include a module_path that includes where the kernel/modules actually lives.

I have a vague recollection from years past that @sjg doesn't have a single kernel path that would be sensible for hardcoding as this #define.

This revision was automatically updated to reflect the committed changes.