modprobe: add more useful debug points
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
This commit is contained in:
parent
3322351724
commit
00ffaeab80
@ -13,7 +13,7 @@
|
|||||||
#include <sys/utsname.h>
|
#include <sys/utsname.h>
|
||||||
#include <fnmatch.h>
|
#include <fnmatch.h>
|
||||||
|
|
||||||
//#define DBG(...) bb_error_msg(__VA_ARGS__)
|
//#define DBG(fmt, ...) bb_error_msg("%s: " fmt, __func__, ## __VA_ARGS__)
|
||||||
#define DBG(...) ((void)0)
|
#define DBG(...) ((void)0)
|
||||||
|
|
||||||
#define MODULE_FLAG_LOADED 0x0001
|
#define MODULE_FLAG_LOADED 0x0001
|
||||||
@ -114,6 +114,7 @@ static void add_probe(const char *name)
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
DBG("queuing %s", name);
|
||||||
m->probed_name = name;
|
m->probed_name = name;
|
||||||
m->flags |= MODULE_FLAG_NEED_DEPS;
|
m->flags |= MODULE_FLAG_NEED_DEPS;
|
||||||
llist_add_to_end(&G.probes, m);
|
llist_add_to_end(&G.probes, m);
|
||||||
@ -206,6 +207,7 @@ static int do_modprobe(struct module_entry *m)
|
|||||||
struct module_entry *m2;
|
struct module_entry *m2;
|
||||||
char *fn, *options;
|
char *fn, *options;
|
||||||
int rc = -1;
|
int rc = -1;
|
||||||
|
llist_t *l;
|
||||||
|
|
||||||
if (!(m->flags & MODULE_FLAG_FOUND_IN_MODDEP)) {
|
if (!(m->flags & MODULE_FLAG_FOUND_IN_MODDEP)) {
|
||||||
DBG("skipping %s, not found in modules.dep", m->modname);
|
DBG("skipping %s, not found in modules.dep", m->modname);
|
||||||
@ -216,6 +218,9 @@ static int do_modprobe(struct module_entry *m)
|
|||||||
if (!(option_mask32 & MODPROBE_OPT_REMOVE))
|
if (!(option_mask32 & MODPROBE_OPT_REMOVE))
|
||||||
m->deps = llist_rev(m->deps);
|
m->deps = llist_rev(m->deps);
|
||||||
|
|
||||||
|
for (l = m->deps; l != NULL; l = l->link)
|
||||||
|
DBG("dep: %s", l->data);
|
||||||
|
|
||||||
rc = 0;
|
rc = 0;
|
||||||
while (m->deps && rc == 0) {
|
while (m->deps && rc == 0) {
|
||||||
fn = llist_pop(&m->deps);
|
fn = llist_pop(&m->deps);
|
||||||
@ -292,7 +297,8 @@ static void load_modules_dep(void)
|
|||||||
llist_add_to(&m->deps, xstrdup(tokens[0]));
|
llist_add_to(&m->deps, xstrdup(tokens[0]));
|
||||||
if (tokens[1])
|
if (tokens[1])
|
||||||
string_to_llist(tokens[1], &m->deps, " ");
|
string_to_llist(tokens[1], &m->deps, " ");
|
||||||
}
|
} else
|
||||||
|
DBG("skipping dep line");
|
||||||
}
|
}
|
||||||
config_close(p);
|
config_close(p);
|
||||||
}
|
}
|
||||||
@ -342,10 +348,12 @@ int modprobe_main(int argc UNUSED_PARAM, char **argv)
|
|||||||
if (opt & MODPROBE_OPT_INSERT_ALL) {
|
if (opt & MODPROBE_OPT_INSERT_ALL) {
|
||||||
/* Each argument is a module name */
|
/* Each argument is a module name */
|
||||||
do {
|
do {
|
||||||
|
DBG("adding module %s", *argv);
|
||||||
add_probe(*argv++);
|
add_probe(*argv++);
|
||||||
} while (*argv);
|
} while (*argv);
|
||||||
} else {
|
} else {
|
||||||
/* First argument is module name, rest are parameters */
|
/* First argument is module name, rest are parameters */
|
||||||
|
DBG("probing just module %s", *argv);
|
||||||
add_probe(argv[0]);
|
add_probe(argv[0]);
|
||||||
G.cmdline_mopts = parse_cmdline_module_options(argv);
|
G.cmdline_mopts = parse_cmdline_module_options(argv);
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user