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)
Mon, Sep 29, 4:04 PM
Unknown Object (File)
Thu, Sep 25, 2:31 AM
Unknown Object (File)
Tue, Sep 23, 10:59 AM
Unknown Object (File)
Mon, Sep 22, 1:12 PM
Unknown Object (File)
Mon, Sep 22, 1:09 PM
Unknown Object (File)
Fri, Sep 19, 12:52 AM
Unknown Object (File)
Wed, Sep 17, 10:10 AM
Unknown Object (File)
Sep 8 2025, 3:56 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 Not Applicable
Unit
Tests Not Applicable

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.