Re: [PATCH] driver core: support bus manage deferred probe

From: Dmitry Torokhov
Date: Wed Jul 18 2018 - 13:17:08 EST


Hi,

On Fri, Jun 29, 2018 at 03:02:26PM +0800, ning.a.zhang@xxxxxxxxx wrote:
> From: Zhang Ning <ning.a.zhang@xxxxxxxxx>
>
> deferred probe will be hanlded by deferred_probe_initcall,
> starts at late_initcall.
>
> this is too late to handle deferred probe, this will block kernel exec
> to userspace, make kernel initial time longer.
>
> if we know when required resources are ready for a list of devices,
> related deferred drivers can be probe earlier.
>
> add these kinds of drivers into logical list,
> eg, bus_type->deferred_probe_pending_list,
> then it can be easily handled by bus driver.

I do not see why bus driver would have a better knowledge about its
device dependencies to accelerate deferred probe retries; it all depends
on the platform. On some platform PCI is essential and devices on PCI
bus are needed early, on others we can push PCI initialization to the
very end as there only a couple devices hanging off PCI bus.

You need to find a better way to decide when to reprobe a device, and
that requires analyzing and tracking the dependencies between devices.

Thanks.

--
Dmitry