[PATCH 2/4 v2] efi_loader: check the status of disconnected drivers
Heinrich Schuchardt
xypron.glpk at gmx.de
Sun Jul 9 11:10:24 CEST 2023
On 6/20/23 08:19, Ilias Apalodimas wrote:
> efi_uninstall_protocol() calls efi_disconnect_all_drivers() but never
> checks the return value. Instead it tries to identify protocols that
> are still open after closing the ones that were opened with
> EFI_OPEN_PROTOCOL_BY_HANDLE_PROTOCOL, EFI_OPEN_PROTOCOL_GET_PROTOCOL
> and EFI_OPEN_PROTOCOL_TEST_PROTOCOL.
>
> Instead of doing that, check the return value early and exit if
> disconnecting the drivers failed. Also reconnect all the drivers of
> a handle if protocols are still found on the handle after disconnecting
> controllers and closing the remaining protocols.
>
> While at it fix a memory leak and properly free the opened protocol
> information when closing a protocol.
>
> Signed-off-by: Ilias Apalodimas <ilias.apalodimas at linaro.org>
Reviewed-by: Heinrich Schuchardt <xypron.glpk at gmx.de>
More information about the U-Boot
mailing list