grub-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH] efi: Change grub_efi_boolean_t from char to enum


From: Daniel Kiper
Subject: Re: [PATCH] efi: Change grub_efi_boolean_t from char to enum
Date: Thu, 31 Aug 2023 20:05:37 +0200
User-agent: NeoMutt/20170113 (1.7.2)

On Mon, Aug 14, 2023 at 04:38:40PM -0500, Glenn Washburn wrote:
> This allows using GRUB_EFI_TRUE and GRUB_EFI_FALSE with proper type and
> value checking. The UEFI 2.10 specification, in section 2.3.1, table 2.3,
> says the size of the boolean is 1 byte and may only contain the values 0 or
> 1. In order to have the enum be 1-byte in size instead of the default
> int-sized, add the packed attribute to the enum.

Hmmm... Could you point out us an official doc saying "packed" attribute
does that?

And I hope you tested that change because we use grub_efi_boolean_t type
quite often...

> Signed-off-by: Glenn Washburn <development@efficientek.com>
> ---
>  include/grub/efi/api.h | 8 +++++++-
>  1 file changed, 7 insertions(+), 1 deletion(-)
>
> diff --git a/include/grub/efi/api.h b/include/grub/efi/api.h
> index 5934db1c992b..be7c128dfb42 100644
> --- a/include/grub/efi/api.h
> +++ b/include/grub/efi/api.h
> @@ -552,7 +552,13 @@ enum grub_efi_reset_type
>  typedef enum grub_efi_reset_type grub_efi_reset_type_t;
>
>  /* Types.  */
> -typedef char grub_efi_boolean_t;
> +enum GRUB_PACKED grub_efi_boolean
> +  {
> +    GRUB_EFI_FALSE,

I would explicitly do

  GRUB_EFI_FALSE = 0,

> +    GRUB_EFI_TRUE
> +  };

I would move GRUB_PACKED here to be inline with its other uses.

Daniel



reply via email to

[Prev in Thread] Current Thread [Next in Thread]