|
@@ -990,12 +990,12 @@ static struct module_attribute *modinfo_attrs[] = {
|
|
|
|
|
|
static const char vermagic[] = VERMAGIC_STRING;
|
|
|
|
|
|
-static int try_to_force_load(struct module *mod, const char *symname)
|
|
|
+static int try_to_force_load(struct module *mod, const char *reason)
|
|
|
{
|
|
|
#ifdef CONFIG_MODULE_FORCE_LOAD
|
|
|
if (!test_taint(TAINT_FORCED_MODULE))
|
|
|
- printk("%s: no version for \"%s\" found: kernel tainted.\n",
|
|
|
- mod->name, symname);
|
|
|
+ printk(KERN_WARNING "%s: %s: kernel tainted.\n",
|
|
|
+ mod->name, reason);
|
|
|
add_taint_module(mod, TAINT_FORCED_MODULE);
|
|
|
return 0;
|
|
|
#else
|
|
@@ -2002,7 +2002,7 @@ static noinline struct module *load_module(void __user *umod,
|
|
|
modmagic = get_modinfo(sechdrs, infoindex, "vermagic");
|
|
|
/* This is allowed: modprobe --force will invalidate it. */
|
|
|
if (!modmagic) {
|
|
|
- err = try_to_force_load(mod, "magic");
|
|
|
+ err = try_to_force_load(mod, "bad vermagic");
|
|
|
if (err)
|
|
|
goto free_hdr;
|
|
|
} else if (!same_magic(modmagic, vermagic, versindex)) {
|
|
@@ -2191,8 +2191,8 @@ static noinline struct module *load_module(void __user *umod,
|
|
|
|| (mod->num_unused_gpl_syms && !mod->unused_gpl_crcs)
|
|
|
#endif
|
|
|
) {
|
|
|
- printk(KERN_WARNING "%s: No versions for exported symbols.\n", mod->name);
|
|
|
- err = try_to_force_load(mod, "nocrc");
|
|
|
+ err = try_to_force_load(mod,
|
|
|
+ "no versions for exported symbols");
|
|
|
if (err)
|
|
|
goto cleanup;
|
|
|
}
|