• Rasmus Villemoes's avatar
    kernel/params.c: defer most of param_sysfs_init() to late_initcall time · 96a1a241
    Rasmus Villemoes authored
    param_sysfs_init(), and in particular param_sysfs_builtin() is rather
    time-consuming; for my board, it currently takes about 30ms.
    
    That amounts to about 3% of the time budget I have from U-Boot hands
    over control to linux and linux must assume responsibility for keeping
    the external watchdog happy.
    
    We must still continue to initialize module_kset at subsys_initcall
    time, since otherwise any request_module() would fail in
    mod_sysfs_init(). However, the bulk of the work in
    param_sysfs_builtin(), namely populating /sys/module/*/version and/or
    /sys/module/*/parameters/ for builtin modules, can be deferred to
    late_initcall time - there's no userspace yet anyway to observe
    contents of /sys or the lack thereof.
    Signed-off-by: default avatarRasmus Villemoes <linux@rasmusvillemoes.dk>
    Signed-off-by: default avatarLuis Chamberlain <mcgrof@kernel.org>
    96a1a241
params.c 23.4 KB