• Pavel Merzlyakov's avatar
    kmodloader: fix and optimize loading of failed modules · 5130fa4d
    Pavel Merzlyakov authored
    1) Restore functionality which was lost in commit 876c7f5b.
       Again at boot time kmodloader can load all modules (/etc/modules.d/*)
       even if dependency information is completely missing.
       This functionality is important in case of hidden dependency (not symbol dependency).
       For example, in kernel 4.4.60 is hidden dependency between nf_nat_ipv6 and nf_conntrack_ipv6.
       We can't load nf_nat_ipv6 before nf_conntrack_ipv6 and modinfo do not show this dependency.
       Two sequential load attempts of nf_nat_ipv6 may not be enough (in my case it's definitely not enough).
       nf_nat_ipv4 has a similar problem.
    
    2) Reduce count of attempts to load failed modules.
       Now kmodloader try to load failed modules after all others are loaded.
    
    main_loader: Count of failed and successful attempts to load nf_nat_ipv6.ko (kernel 4.4.60) depend on ubox version:
       COMMIT        FAILED      SUCCESSFUL     TOTAL
       128bc35f      53          1              54
       876c7f5b      2           0              2
       this          1           1              2
    Signed-off-by: 's avatarPavel Merzlyakov <pavel.merzlyakov@gmail.com>
    Acked-by: 's avatarJo-Philipp Wich <jo@mein.io>
    5130fa4d
Name
Last commit
Last update
log Loading commit data...
validate Loading commit data...
.gitignore Loading commit data...
CMakeLists.txt Loading commit data...
getrandom.c Loading commit data...
kmodloader.c Loading commit data...
lsbloader.c Loading commit data...