On Thu, 19 Jan 2023 at 15:54, Heinrich Schuchardt
<[email protected]> wrote:
>
> Currently file ubootefi.var is only created if the user sets a non-volatile
> EFI variable. If the file is missing, a warning is written.
>
> With the change PlatformLang is always persisted. So the file will exist on
> second boot.
>
> Signed-off-by: Heinrich Schuchardt <[email protected]>
> ---
> lib/efi_loader/efi_variable.c | 8 +++++---
> 1 file changed, 5 insertions(+), 3 deletions(-)
>
> diff --git a/lib/efi_loader/efi_variable.c b/lib/efi_loader/efi_variable.c
> index 503a33ed65..7c32adf6e5 100644
> --- a/lib/efi_loader/efi_variable.c
> +++ b/lib/efi_loader/efi_variable.c
> @@ -334,9 +334,11 @@ efi_status_t efi_set_variable_int(const u16
> *variable_name,
> else
> ret = EFI_SUCCESS;
>
> - /* Write non-volatile EFI variables to file */
> - if (attributes & EFI_VARIABLE_NON_VOLATILE &&
> - ret == EFI_SUCCESS && efi_obj_list_initialized == EFI_SUCCESS)
> + /*
> + * Write non-volatile EFI variables to file
> + * TODO: check if a value change has occured to avoid superfluous
> writes
> + */
> + if (attributes & EFI_VARIABLE_NON_VOLATILE)
> efi_var_to_file();
>
> return EFI_SUCCESS;
> --
> 2.38.1
>
Reviewed-by: Ilias Apalodimas <[email protected]>