modprobe: Add support for modprobe.blacklist=module1,module2,...
function old new delta parse_and_add_kcmdline_module_options - 186 +186 modprobe_main 713 798 +85 do_modprobe 648 451 -197 ------------------------------------------------------------------------------ (add/remove: 1/0 grow/shrink: 1/1 up/down: 271/-197) Total: 74 bytes Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
This commit is contained in:
parent
07abc7c6f7
commit
e4202df091
@ -663,6 +663,25 @@ int modprobe_main(int argc UNUSED_PARAM, char **argv)
|
|||||||
load_modules_dep();
|
load_modules_dep();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* Handle modprobe.blacklist=module1,module2,... */
|
||||||
|
if (ENABLE_FEATURE_MODPROBE_BLACKLIST) {
|
||||||
|
char *options;
|
||||||
|
char *substr;
|
||||||
|
|
||||||
|
options = parse_and_add_kcmdline_module_options(NULL, "modprobe");
|
||||||
|
while ((substr = strsep(&options, " ")) != NULL) {
|
||||||
|
char *fn = is_prefixed_with(substr, "blacklist=");
|
||||||
|
if (!fn)
|
||||||
|
continue;
|
||||||
|
while ((substr = strsep(&fn, ",")) != NULL) {
|
||||||
|
/* blacklist <modulename> */
|
||||||
|
get_or_add_modentry(substr)->flags |= MODULE_FLAG_BLACKLISTED;
|
||||||
|
DBG("blacklist: %s", substr);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
/*free(options); - WRONG, strsep may have advanced it */
|
||||||
|
}
|
||||||
|
|
||||||
rc = 0;
|
rc = 0;
|
||||||
while ((me = llist_pop(&G.probes)) != NULL) {
|
while ((me = llist_pop(&G.probes)) != NULL) {
|
||||||
if (me->realnames == NULL) {
|
if (me->realnames == NULL) {
|
||||||
|
Loading…
Reference in New Issue
Block a user