Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 697dfd88 authored by H. Peter Anvin's avatar H. Peter Anvin
Browse files

Merge tag 'efi-urgent' into x86/urgent



 * The EFI variable anti-bricking algorithm merged in -rc8 broke booting
   on some Apple machines because they implement EFI spec 1.10, which
   doesn't provide a QueryVariableInfo() runtime function and the logic
   used to check for the existence of that function was insufficient.
   Fix from Josh Boyer.

 * The anti-bricking algorithm also introduced a compiler warning on
   32-bit. Fix from Borislav Petkov.

Signed-off-by: default avatarH. Peter Anvin <hpa@linux.intel.com>
parents 0fbd0676 f697036b
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -258,7 +258,7 @@ static efi_status_t setup_efi_vars(struct boot_params *params)
	u64 store_size, remaining_size, var_size;
	efi_status_t status;

	if (!sys_table->runtime->query_variable_info)
	if (sys_table->runtime->hdr.revision < EFI_2_00_SYSTEM_TABLE_REVISION)
		return EFI_UNSUPPORTED;

	data = (struct setup_data *)(unsigned long)params->hdr.setup_data;
@@ -266,7 +266,7 @@ static efi_status_t setup_efi_vars(struct boot_params *params)
	while (data && data->next)
		data = (struct setup_data *)(unsigned long)data->next;

	status = efi_call_phys4(sys_table->runtime->query_variable_info,
	status = efi_call_phys4((void *)sys_table->runtime->query_variable_info,
				EFI_VARIABLE_NON_VOLATILE |
				EFI_VARIABLE_BOOTSERVICE_ACCESS |
				EFI_VARIABLE_RUNTIME_ACCESS, &store_size,