[PATCH 2/4] x86/boot/compressed: Clean up EFI RSDP lookup in efi_get_rsdp_addr()

From: Thorsten Blum

Date: Sun Jun 21 2026 - 10:42:55 EST


Remove the unused ret variable in __efi_get_rsdp_addr() and the unused
nr_tables variable in efi_get_rsdp_addr(). Also inline variables that
are only used for simple if checks.

Since efi_get_conf_table() already calls efi_get_system_table(), drop
the redundant efi_get_system_table() call and keep a single error path.

Signed-off-by: Thorsten Blum <thorsten.blum@xxxxxxxxx>
---
arch/x86/boot/compressed/acpi.c | 16 +++-------------
1 file changed, 3 insertions(+), 13 deletions(-)

diff --git a/arch/x86/boot/compressed/acpi.c b/arch/x86/boot/compressed/acpi.c
index f196b1d1ddf8..92c239d8f40b 100644
--- a/arch/x86/boot/compressed/acpi.c
+++ b/arch/x86/boot/compressed/acpi.c
@@ -26,7 +26,6 @@ __efi_get_rsdp_addr(unsigned long cfg_tbl_pa, unsigned int cfg_tbl_len)
{
#ifdef CONFIG_EFI
unsigned long rsdp_addr;
- int ret;

/*
* Search EFI system tables for RSDP. Preferred is ACPI_20_TABLE_GUID to
@@ -53,21 +52,12 @@ static acpi_physical_address efi_get_rsdp_addr(void)
#ifdef CONFIG_EFI
unsigned long cfg_tbl_pa = 0;
unsigned int cfg_tbl_len;
- unsigned long systab_pa;
- unsigned int nr_tables;
- enum efi_type et;
- int ret;

- et = efi_get_type(boot_params_ptr);
- if (et == EFI_TYPE_NONE)
+ if (efi_get_type(boot_params_ptr) == EFI_TYPE_NONE)
return 0;

- systab_pa = efi_get_system_table(boot_params_ptr);
- if (!systab_pa)
- error("EFI support advertised, but unable to locate system table.");
-
- ret = efi_get_conf_table(boot_params_ptr, &cfg_tbl_pa, &cfg_tbl_len);
- if (ret || !cfg_tbl_pa)
+ if (efi_get_conf_table(boot_params_ptr, &cfg_tbl_pa, &cfg_tbl_len) ||
+ !cfg_tbl_pa)
error("EFI config table not found.");

return __efi_get_rsdp_addr(cfg_tbl_pa, cfg_tbl_len);