Re: [PATCH v1 2/2] driver core: fw_devlink: Handle missing drivers for optional suppliers

From: Geert Uytterhoeven
Date: Mon Feb 01 2021 - 05:33:04 EST


Hi Saravana,

On Sat, Jan 30, 2021 at 5:03 AM Saravana Kannan <saravanak@xxxxxxxxxx> wrote:
> After a deferred probe attempt has exhaused all the devices that can be
> bound, any device that remains unbound has one/both of these conditions
> true:
>
> (1) It is waiting on its supplier to bind
> (2) It does not have a matching driver
>
> So, to make fw_devlink=on more forgiving of missing drivers for optional
> suppliers, after we've done a full deferred probe attempt, this patch
> deletes all device links created by fw_devlink where the supplier hasn't
> probed yet and the supplier itself is not waiting on any of its
> suppliers. This allows consumers to probe during another deferred probe
> attempt if they were waiting on optional suppliers.
>
> When modules are enabled, we can't differentiate between a driver
> that'll never be registered vs a driver that'll be registered soon by
> loading a module. So, this patch doesn't do anything for the case where
> modules are enabled.

For the modular case, can't you do a probe regardless? Or limit it
to devices where the missing provider is a DMAC or IOMMU driver?
Many drivers can handle missing DMAC controller drivers, and are even
supposed to work that way. They may even retry obtaining DMA releases
later.

Gr{oetje,eeting}s,

Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@xxxxxxxxxxxxxx

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds