[RFC] shipping kernels with default modules?
    Adrian Chadd 
    adrian at freebsd.org
       
    Sun Jun 12 02:20:18 UTC 2011
    
    
  
On 12 June 2011 10:10, Warner Losh <imp at bsdimp.com> wrote:
>>> Right now newbus uses Giant for all its locking.  That's the biggest problem preventing parallel probe/attach.  Also, each and every bus calls probe, then calls attach for each device in sequence.  Fixing that would require changing all the bus drivers.
>>
>>
>> Fair enough. That would only be worthwhile in the presence of a
>> coordinated push to shorten boot / reset times.
>
> Agreed.  We could be a *LOT* faster if we stalled on first use rather than wait for all the stragglers.  No need to wait for network devices, or that USB drive that's connected to the system until ifconfig or mount time.  I think that has to be in the mix too.  But that dove-tails into something like launchd where applications wait for the resources they use to finish initializing.
How about first getting a modular GENERIC working for different
platforms, with the relevant metadata to load in modules that are
needed at loader time, or the relevant loader.conf snippet to emulate
the GENERIC behaviour (and people can just comment out modules they
don't need from that!).
Then worry about why loading modules from loader takes so long (if it
does, I've never benchmarked it!)
Parallelising probe/attach where possible, which may be a good idea,
seems like an orthogonal problem.
Adrian
    
    
More information about the freebsd-arch
mailing list