mirror of
https://github.com/torvalds/linux.git
synced 2024-11-14 08:02:07 +00:00
efi: libstub: remove pointless goto kludge
Remove some goto cruft that serves no purpose and obfuscates the code. Signed-off-by: Ard Biesheuvel <ardb@kernel.org>
This commit is contained in:
parent
eab3126571
commit
a12b78b571
@ -438,13 +438,14 @@ efi_status_t efi_exit_boot_services(void *handle, void *priv,
|
||||
efi_status_t status;
|
||||
|
||||
status = efi_get_memory_map(&map);
|
||||
|
||||
if (status != EFI_SUCCESS)
|
||||
goto fail;
|
||||
return status;
|
||||
|
||||
status = priv_func(map, priv);
|
||||
if (status != EFI_SUCCESS)
|
||||
goto free_map;
|
||||
if (status != EFI_SUCCESS) {
|
||||
efi_bs_call(free_pool, map);
|
||||
return status;
|
||||
}
|
||||
|
||||
if (efi_disable_pci_dma)
|
||||
efi_pci_disable_bridge_busmaster();
|
||||
@ -475,25 +476,16 @@ efi_status_t efi_exit_boot_services(void *handle, void *priv,
|
||||
|
||||
/* exit_boot_services() was called, thus cannot free */
|
||||
if (status != EFI_SUCCESS)
|
||||
goto fail;
|
||||
return status;
|
||||
|
||||
status = priv_func(map, priv);
|
||||
/* exit_boot_services() was called, thus cannot free */
|
||||
if (status != EFI_SUCCESS)
|
||||
goto fail;
|
||||
return status;
|
||||
|
||||
status = efi_bs_call(exit_boot_services, handle, map->map_key);
|
||||
}
|
||||
|
||||
/* exit_boot_services() was called, thus cannot free */
|
||||
if (status != EFI_SUCCESS)
|
||||
goto fail;
|
||||
|
||||
return EFI_SUCCESS;
|
||||
|
||||
free_map:
|
||||
efi_bs_call(free_pool, map);
|
||||
fail:
|
||||
return status;
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user