summaryrefslogtreecommitdiffstats
path: root/sys/kern/kern_linker.c
diff options
context:
space:
mode:
Diffstat (limited to 'sys/kern/kern_linker.c')
-rw-r--r--sys/kern/kern_linker.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/sys/kern/kern_linker.c b/sys/kern/kern_linker.c
index a88d636..91e8539 100644
--- a/sys/kern/kern_linker.c
+++ b/sys/kern/kern_linker.c
@@ -1619,14 +1619,16 @@ linker_load_module(const char *kldname, const char *modname,
} else {
if (modlist_lookup2(modname, verinfo) != NULL)
return (EEXIST);
- if (kldname == NULL)
+ if (kldname != NULL)
+ pathname = linker_strdup(kldname);
+ else if (rootdev == NODEV)
+ pathname = NULL;
+ else
/*
* Need to find a KLD with required module
*/
pathname = linker_search_module(modname,
strlen(modname), verinfo);
- else
- pathname = linker_strdup(kldname);
}
if (pathname == NULL)
return (ENOENT);
OpenPOWER on IntegriCloud