[PATCH] efi: fix probing of EFI devices with parents
Ahmad Fatoum
a.fatoum at pengutronix.de
Thu Aug 14 00:16:48 PDT 2025
Hi Tobias,
On 13.08.25 23:40, Tobias Waldekranz wrote:
> The refactor in the referenced commit sends in the match function as
> the context data - instead of the handle we are looking for.
>
> This meant that efi_find_device() always returned NULL, leading to all
> EFI devices with parent handles not being probed.
>
> Fix this by sending in the handle instead.
>
> Fixes: 4a5a9b58b568 ("drive: bus: make use of new bus_find_device helper")
> Signed-off-by: Tobias Waldekranz <tobias at waldekranz.com>
Tested-by: Ahmad Fatoum <a.fatoum at pengutronix.de>
Reviewed-by: Ahmad Fatoum <a.fatoum at pengutronix.de>
Thanks for fixing this before it hit a release!
I just sent out a regression test, so this particular issue
can't go unnoticed in future.
Cheers,
Ahmad
> ---
> drivers/efi/efi-device.c | 3 +--
> 1 file changed, 1 insertion(+), 2 deletions(-)
>
> diff --git a/drivers/efi/efi-device.c b/drivers/efi/efi-device.c
> index 0e6f75659f..f0e22bd140 100644
> --- a/drivers/efi/efi-device.c
> +++ b/drivers/efi/efi-device.c
> @@ -40,8 +40,7 @@ static struct efi_device *efi_find_device(efi_handle_t handle)
> {
> struct device *dev;
>
> - dev = bus_find_device(&efi_bus, NULL, efi_device_match_handle,
> - efi_device_match_handle);
> + dev = bus_find_device(&efi_bus, NULL, handle, efi_device_match_handle);
> if (dev)
> return container_of(dev, struct efi_device, dev);
>
--
Pengutronix e.K. | |
Steuerwalder Str. 21 | http://www.pengutronix.de/ |
31137 Hildesheim, Germany | Phone: +49-5121-206917-0 |
Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |
More information about the barebox
mailing list