• Arjan van de Ven's avatar
    modules: extend initcall_debug functionality to the module loader · 59f9415f
    Arjan van de Ven authored
    The kernel has this really nice facility where if you put "initcall_debug"
    on the kernel commandline, it'll print which function it's going to
    execute just before calling an initcall, and then after the call completes
    it will
    
    1) print if it had an error code
    
    2) checks for a few simple bugs (like leaving irqs off)
    and
    
    3) print how long the init call took in milliseconds.
    
    While trying to optimize the boot speed of my laptop, I have been loving
    number 3 to figure out what to optimize...  ...  and then I wished that
    the same thing was done for module loading.
    
    This patch makes the module loader use this exact same functionality; it's
    a logical extension in my view (since modules are just sort of late
    binding initcalls anyway) and so far I've found it quite useful in finding
    where things are too slow in my boot.
    Signed-off-by: default avatarArjan van de Ven <arjan@linux.intel.com>
    Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
    Signed-off-by: default avatarRusty Russell <rusty@rustcorp.com.au>
    59f9415f
module.c 69.3 KB