From c88e4f74f35e9469c7940abe44ef87e953bb143a Mon Sep 17 00:00:00 2001 From: Paul Meyer Date: Sun, 7 Jun 2026 19:18:33 +0200 Subject: [PATCH] man: fix systemd-stub .hwids section to be a singleton Only .dtbauto and .efifw may appear more than once, .hwids is a singleton per the UKI specification and the stub reads a single .hwids section (per profile), matching hardware IDs against entries within it. Co-developed-by: Claude Opus 4.8 Signed-off-by: Paul Meyer (cherry picked from commit af44888d22f03358e923e56f96a629b4810a5ca9) (cherry picked from commit a5eee37d9e608d0486528a6fbbceda2d77c39c4a) (cherry picked from commit 715cdf030af91a6a152073be3c957d521823b711) --- man/systemd-stub.xml | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/man/systemd-stub.xml b/man/systemd-stub.xml index d098804dc10..0ac278bbe85 100644 --- a/man/systemd-stub.xml +++ b/man/systemd-stub.xml @@ -89,10 +89,11 @@ compatible string supplied by the firmware in configuration tables and comparing it with the first compatible string from each of the .dtbauto sections. If the firmware does not provide a DeviceTree, the match is done using the - .hwids section instead. After selecting a .hwids section (see the - description below), the compatible string from that section will be used to perform - the same matching procedure. If a match is found, that .dtbauto section will be - loaded and will override .dtb if present. + .hwids section instead. After selecting the matching entry in the + .hwids section (see the description below), the compatible string + from that entry will be used to perform the same matching procedure. If a match is found, that + .dtbauto section will be loaded and will override .dtb if + present. Zero or more .efifw sections for the firmware image. It works in many ways similar to .dtbauto sections. systemd-stub @@ -103,12 +104,12 @@ matching firmware will be loaded. - Zero or more .hwids sections with hardware IDs of the machines to + An optional .hwids section with hardware IDs of the machines to match DeviceTrees. systemd-stub will use the SMBIOS data to calculate hardware IDs of the machine (as per specification), - and then it will try to find any of them in each of the .hwids sections. The first - matching section will be used. + and then it will try to find any of them in the .hwids section. The first + matching entry will be used. An optional .uname section with the kernel version information, i.e. the output of uname -r for the kernel included in the .linux @@ -130,7 +131,7 @@ In a basic UKI, the sections listed above appear at most once, with the exception of - .dtbauto and .hwids sections. In a multi-profile UKI, + .dtbauto and .efifw sections. In a multi-profile UKI, multiple sets of these sections are present in a single file and form "profiles", one of which can be selected at boot. For this, the PE section .profile is defined to be used as the separator between sets of sections. The