Hi, On Fri, Jun 29, 2018 at 03:02:26PM +0800, [email protected] wrote: > From: Zhang Ning <[email protected]> > > 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

