diff --git a/sbin/kldload/kldload.c b/sbin/kldload/kldload.c index 6e88546bd4e3..02b34cef2842 100644 --- a/sbin/kldload/kldload.c +++ b/sbin/kldload/kldload.c @@ -181,12 +181,22 @@ main(int argc, char** argv) printf("%s is already " "loaded\n", argv[0]); } else { - if (errno == EEXIST) + switch (errno) { + case EEXIST: warnx("can't load %s: module " "already loaded or " "in kernel", argv[0]); - else + break; + case ENOEXEC: + warnx("an error occured while " + "loading the module. " + "Please check dmesg(1) for " + "more details."); + break; + default: warn("can't load %s", argv[0]); + break; + } errors++; } } else {