Hi, On Thu, 4 Jun 2026 at 11:35, Alexey Charkov <[email protected]> wrote: > > On Thu, Jun 4, 2026 at 9:21 PM Tom Rini <[email protected]> wrote: > > > > On Thu, Jun 04, 2026 at 09:16:58PM +0400, Alexey Charkov wrote: > > > On Thu, Jun 4, 2026 at 8:05 PM Tom Rini <[email protected]> wrote: > > > > > > > > On Thu, Jun 04, 2026 at 07:31:05PM +0400, Alexey Charkov wrote: > > > > > > > > > Add support for the Boot Loader Specification (BLS) type 1 boot > > > > > entries, > > > > > as generated by default by systemd's kernel-install when loader=bls. > > > > > > > > > > Given that the format of BLS entries is pretty much the same as > > > > > PXElinux, > > > > > reuse the existing library for the parsing logic. > > > > > > > > > > BLS type 2 entries are out of scope, as they are effectively just EFI > > > > > applications and should be booted as such. > > > > > > > > > > This implementation is also only allowing a single top-sorting entry > > > > > to > > > > > boot, as the standard boot infrastruture currently doesn't support > > > > > multiple entries per partition-bootmeth tuple. I have a proposed > > > > > extension > > > > > to enable that and will post it separately as RFC - that enables the > > > > > use > > > > > of `bootflow menu` to select the kernel to boot without jumping > > > > > through > > > > > several menus with different behavior as is currently required with > > > > > extlinux.conf. > > > > > > > > > > Signed-off-by: Alexey Charkov <[email protected]> > > > > > > > > This is good to see, thanks for posting it. One concern I have is that > > > > out of 1529 platforms, this would be enabled on 1392 of them. And the > > > > size growth is around 1.5 kilobytes. Is there some smaller percentage of > > > > platforms this should be "default y" for ? Or is the expectation that > > > > something like Debian will be configuring for this moving forward, so > > > > yes even something like PowerPC platforms be using this? Thanks! > > > > > > Well this is the config format that systemd's kernel-install produces > > > out of the box, and it doesn't require EFI support unlike UKI (a.k.a. > > > BLS type 2). So one could argue that any system shipping with systemd > > > benefits directly. In my view, that makes it more accessible for end > > > users than e.g. bootmeth_extlinux, which is also "default y" but I > > > could only find a suitable config generator for it with device tree > > > support in Debian (not in Fedora, nor in Gentoo out of my extremely > > > representative sample of N=3 distros). > > > > > > Happy to make it conditional on whatever platforms find this helpful > > > though, or drop "default y" altogether. I personally only care about > > > ARM, and Rockchip in particular :) > > > > Right. What I'm asking is, do you know how many distros are planning to > > adopt BLS type 1 support by default? And since you're on Rockchip, why > > not just use BLS type 2? > > I've only seen Fedora use it by default, but I'm not that much of a > distro connoisseur. There might be more, or there might not. > > BLS type 2 didn't work for me last time I tried it because it > seemingly wanted to bake the DTB into the UKI and couldn't handle DT > overlays, which made booting different boards with the same kernel > binary a pain. BLS type 1 didn't have those issues, and a concise > plaintext config has its (subjective) appeal over > yet-another-packed-binary-format.
BLS type 2 is an EFI app, so a huge amount of extra code and complexity to do the same thing. I already have BLS in the Concept tree and would love to see it in mainline. Relevant to this I have: - refactoring so that pxe_utils can support parsing without booting - support in bootstd for multiple bootflows per partition - a script and test for booting Ubuntu this way (i.e. without EFI) I'm not entirely sure of how to upstream this, given all the refactoring that is needed, but I'll take another look. Regards, Simon

