diff options
Diffstat (limited to 'freebsd/sys/kern/kern_module.c')
-rw-r--r-- | freebsd/sys/kern/kern_module.c | 12 |
1 files changed, 5 insertions, 7 deletions
diff --git a/freebsd/sys/kern/kern_module.c b/freebsd/sys/kern/kern_module.c index 72c9d99d..fb910e3c 100644 --- a/freebsd/sys/kern/kern_module.c +++ b/freebsd/sys/kern/kern_module.c @@ -144,7 +144,7 @@ module_register_init(const void *arg) MOD_XLOCK; if (mod->file) { /* - * Once a module is succesfully loaded, move + * Once a module is successfully loaded, move * it to the head of the module list for this * linker file. This resorts the list so that * when the kernel linker iterates over the @@ -170,16 +170,14 @@ module_register(const moduledata_t *data, linker_file_t container) newmod = module_lookupbyname(data->name); if (newmod != NULL) { MOD_XUNLOCK; - printf("module_register: module %s already exists!\n", - data->name); +#ifndef __rtems__ + printf("%s: cannot register %s from %s; already loaded from %s\n", + __func__, data->name, container->filename, newmod->file->filename); +#endif /* __rtems__ */ return (EEXIST); } namelen = strlen(data->name) + 1; newmod = malloc(sizeof(struct module) + namelen, M_MODULE, M_WAITOK); - if (newmod == NULL) { - MOD_XUNLOCK; - return (ENOMEM); - } #ifndef __rtems__ newmod->refs = 1; #endif /* __rtems__ */ |