Looks like boot-timestamps.c first tries to read the ACPI FPDT table (it seems acpi-fpdt.c uses the "OS Loader StartImage Start" and "ExitBootServices Exit" fields), but if that's unavailable, then it uses timestamps stored by systemd-boot in EFI variables (/sys/firmware/efi/efivars/LoaderTime*). The latter seems to be estimating it from RDTSC (src/boot/efi/util.c).
On Wed, Oct 13, 2021 at 3:05 PM jiansong Xu <jiansong.xu@xxxxxxxxxx> wrote:
This is bios from oracle, we noticed that the firmware times reported were incorrect.
Startup finished in 59min 7.944s (firmware) + 33.051s (loader) + 4.428s
(kernel) + 1min 18.870s (initrd) + 44.494s (userspace) = 1h 1min 48.789s
May I ask what is the source of the firmware ? is it read from acpi table?
Mantas Mikulėnas