[PATCH 18/38] efi: Show all known UUIDs with CONFIG_CMD_EFIDEBUG

Heinrich Schuchardt xypron.glpk at gmx.de
Fri Mar 31 08:46:09 CEST 2023



Am 31. März 2023 03:16:06 MESZ schrieb Simon Glass <sjg at chromium.org>:
>Hi Heinrich,
>
>On Fri, 31 Mar 2023 at 13:27, Heinrich Schuchardt <xypron.glpk at gmx.de> wrote:
>>
>>
>>
>> Am 31. März 2023 01:48:57 MESZ schrieb Simon Glass <sjg at chromium.org>:
>> >Hi Heinrich,
>> >
>> >On Fri, 31 Mar 2023 at 11:38, Heinrich Schuchardt <xypron.glpk at gmx.de> wrote:
>> >>
>> >>
>> >>
>> >> Am 30. März 2023 23:32:07 MESZ schrieb Simon Glass <sjg at chromium.org>:
>> >> >The CMD_EFIDEBUG option enables debugging so it is reasonable to assume
>> >> >that all effects should be made to decode the dreaded UUIDs favoured by
>> >> >UEFI.
>> >> >
>> >> >Update the table to show them all when CONFIG_CMD_EFIDEBUG is enabled.
>> >> >
>> >> >Signed-off-by: Simon Glass <sjg at chromium.org>
>> >> >---
>> >> >
>> >> > lib/uuid.c | 2 +-
>> >> > 1 file changed, 1 insertion(+), 1 deletion(-)
>> >> >
>> >> >diff --git a/lib/uuid.c b/lib/uuid.c
>> >> >index 96e1af3c8b00..ab30fbf9152f 100644
>> >> >--- a/lib/uuid.c
>> >> >+++ b/lib/uuid.c
>> >> >@@ -255,7 +255,7 @@ static const struct {
>> >> >               EFI_CERT_TYPE_PKCS7_GUID,
>> >> >       },
>> >> > #endif
>> >> >-#ifdef CONFIG_EFI
>> >> >+#if defined(CONFIG_CMD_EFIDEBUG) || defined(CONFIG_EFI)
>> >> >       { "EFI_LZMA_COMPRESSED", EFI_LZMA_COMPRESSED },
>> >> >       { "EFI_DXE_SERVICES", EFI_DXE_SERVICES },
>> >> >       { "EFI_HOB_LIST", EFI_HOB_LIST },
>> >>
>> >> None of these are used when not building the EFI app.
>> >
>> >So you think we should disable them? As I said above, enabling
>> >debugging seems like a good reason to allow decoding of all of them.
>> >
>> >Regards,
>> >SImon
>>
>> U-Boot, Shim, GRUB will not use any of these. The EFI app sees them if shared by the preceding UEFI firmware.
>>
>> There are zillions other GUIDs that a vendor UEFI might use. But why should we care?
>>
>> I would rather drop these strings from the code base.
>
>I would far rather drop the UUIDs from the code base. Is that
>possible? We should use a simple numeric tag, like 0, 1, 2, 3, 4 with
>an associated descriptive string. Even using a 16-byte string would be
>better than a UUID.
>
>While we have to put up with UUIDs, we need a way to make them
>intelligible for us poor sods who need to decode boot-time traces[1]
>and the like.

The EFI spec uses GUIDs and these are strings you will find with Google. Natural numbers that have bo significance won't serve anybody. GUIDs not used inside U-Boot we should not care to translate as there are too many.

>
>Regards,
>Simon
>
>[1]
>    EFI: Exit: efi_open_protocol: 0
>    EFI: Entry efi_open_protocol(000000007ed33da0,
>5b1b31a1-9562-11d2-8e3f-00a0c969723b, 000000007ecf4978,
>000000007ed33da0, 00000000000
>00000, 0x2)
>    EFI: Exit: efi_open_protocol: 0
>    EFI: Entry efi_open_protocol(000000007ed238b0,
>09576e91-6d3f-11d2-8e39-00a0c969723b, 000000007ecf4978,
>000000007ed33da0, 00000000000
>00000, 0x2)
>    EFI: Exit: efi_open_protocol: 0
>    EFI: Entry efi_locate_handle_ext(2,
>a19832b9-ac25-11d3-9a2d-0090273fc14d, 0000000000000000,
>000000007ecf4948, 000000007d6f3ba0)
>    EFI: Exit: efi_locate_handle_ext: 0
>    EFI: Entry efi_open_protocol(000000007ed25040,
>09576e91-6d3f-11d2-8e39-00a0c969723b, 000000007ecf4978,
>000000007ed33da0, 00000000000
>00000, 0x2)
>    EFI: Exit: efi_open_protocol: 0
>    EFI: Entry efi_open_protocol(000000007ed25040,
>a19832b9-ac25-11d3-9a2d-0090273fc14d, 000000007ecf4978,
>000000007ed33da0, 00000000000
>00000, 0x2)
>    EFI: Exit: efi_open_protocol: 0
>    EFI: Entry efi_open_protocol(000000007ed33da0,
>5b1b31a1-9562-11d2-8e3f-00a0c969723b, 000000007ecf49b8, 00000
>0007ed33da0, 0000000000000000, 0x2)
>    EFI: Exit: efi_open_protocol: 0
>    EFI: Entry efi_open_protocol(000000007ed238b0,
>09576e91-6d3f-11d2-8e39-00a0c969723b, 000000007ecf4958,
>000000007ed33da0, 00000000000
>00000, 0x2)
>    EFI: Exit: efi_open_protocol: 0
>    EFI: Entry efi_locate_protocol(96751a3d-72f4-41a6-a794-ed5d0e67ae6b,
>0000000000000000, 000000007ecf4668)
>    EFI: Exit: efi_locate_protocol: 14
>    EFI: Entry efi_locate_handle_ext(2,
>f541796d-a62e-4954-a775-9584f61b9cdd, 0000000000000000,
>000000007ecf4638, 000000007d40be00)
>    EFI: Exit: efi_locate_handle_ext: 14
>    EFI: Entry efi_locate_handle_ext(2,
>607f766c-7455-42be-930b-e4d76db2720f, 0000000000000000,
>000000007ecf4638, 000000007d40be00)
>    EFI: Exit: efi_locate_handle_ext: 14
>    EFI: Entry efi_locate_protocol(f42f7782-012e-4c12-9956-49f94304f721,
>0000000000000000, 000000007ecf43e8)
>    EFI: Exit: efi_locate_protocol: 14


More information about the U-Boot mailing list