[PATCH 1/1] efi_loader: ensure that file ubootefi.var is created

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 heinrich.schuchardt@canonical.com --- 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;

On Thu, 19 Jan 2023 at 15:54, Heinrich Schuchardt heinrich.schuchardt@canonical.com 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 heinrich.schuchardt@canonical.com
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 ilias.apalodimas@linaro.org
participants (2)
-
Heinrich Schuchardt
-
Ilias Apalodimas