X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=blobdiff_plain;f=src%2Fudev-builtin-kmod.c;h=57e813f863cc8a0f69a8bebfea06075b36fa3816;hp=d0a1f28e2f4407ed2652ea1535ab2c2a7d9e70e8;hb=96b2eef25bb43c62f8d6b914a04fd72d8a968d65;hpb=912541b0246ef315d4d851237483b98c9dd3f992 diff --git a/src/udev-builtin-kmod.c b/src/udev-builtin-kmod.c index d0a1f28e2..57e813f86 100644 --- a/src/udev-builtin-kmod.c +++ b/src/udev-builtin-kmod.c @@ -36,7 +36,6 @@ static struct kmod_ctx *ctx; static int load_module(struct udev *udev, const char *alias) { struct kmod_list *list = NULL; - struct kmod_list *listb = NULL; struct kmod_list *l; int err; @@ -44,20 +43,16 @@ static int load_module(struct udev *udev, const char *alias) if (err < 0) return err; - err = kmod_module_get_filtered_blacklist(ctx, list, &listb); - if (err < 0) - return err; - if (list == NULL) info(udev, "no module matches '%s'\n", alias); - else if (listb == NULL) - info(udev, "modules matching '%s' are blacklisted\n", alias); - kmod_list_foreach(l, listb) { + kmod_list_foreach(l, list) { struct kmod_module *mod = kmod_module_get_module(l); - err = kmod_module_probe_insert_module(mod, 0, NULL, NULL, NULL); - if (err >=0 ) + err = kmod_module_probe_insert_module(mod, KMOD_PROBE_APPLY_BLACKLIST, NULL, NULL, NULL, NULL); + if (err == KMOD_PROBE_APPLY_BLACKLIST) + info(udev, "module '%s' is blacklisted\n", kmod_module_get_name(mod)); + else if (err == 0) info(udev, "inserted '%s'\n", kmod_module_get_name(mod)); else info(udev, "failed to insert '%s'\n", kmod_module_get_name(mod)); @@ -66,7 +61,6 @@ static int load_module(struct udev *udev, const char *alias) } kmod_module_unref_list(list); - kmod_module_unref_list(listb); return err; }