Re: [PATCH] clarify message and give support contact for non-GPLmodules

From: Sean Estabrooks
Date: Sat May 01 2004 - 17:25:03 EST


On Sat, 1 May 2004 17:48:14 -0400
Marc Boucher <marc@xxxxxxxxxxxx> wrote:

> Sean,
>
> I think that your wording is problematic, because:
>
> - A module with non-GPL license could be distributed in source form.
> - Its author can also be an individual or organization, not necessarily
> a vendor.

Patch below attempts to address these concerns.

> - The word "tainted" is confusing and needlessly scary for average
> users.
>

Please stop your political agenda of subverting the open source nature of
Linux. The average user SHOULD find it a scary to run modules
that don't conform to her choice of OPEN SOURCE OPERATING SYSTEM.
If the average user wanted to run closed source code she would have picked
a closed source operating system right? Lets not let closed source code sneak
in without putting up big red flags for the user. Lets make sure that the
USER IS NOT CONFUSED about the nature of the module they're loading.


--- linux-2.6.6-rc3-bk3/kernel/module.c 2004-05-01 16:06:46.769778360 -0400
+++ linux-2.6.6-rc3-bk3-mb/kernel/module.c 2004-05-01 16:38:02.563614352 -0400
@@ -1125,15 +1125,19 @@
|| strcmp(license, "Dual MPL/GPL") == 0);
}

-static void set_license(struct module *mod, const char *license)
+static void set_license(struct module *mod, const char *license, const char *author)
{
if (!license)
license = "unspecified";

mod->license_gplok = license_is_gpl_compatible(license);
- if (!mod->license_gplok) {
- printk(KERN_WARNING "%s: module license '%s' taints kernel.\n",
- mod->name, license);
+ if (!mod->license_gplok && !(tainted & TAINT_PROPRIETARY_MODULE)) {
+ printk(KERN_INFO "%s: module has non-GPL license (%s) kernel is now tainted.\n", mod->name, license);
+ printk(KERN_INFO "%s: Please consider supporting those who provide GPL licensed drivers\n", mod->name);
+ if(author)
+ printk(KERN_INFO "%s: tainted kernel means all support must come from: %s\n", mod->name, author);
+ else
+ printk(KERN_INFO "%s: tainted kernel means all support must come from driver author\n", mod->name);
tainted |= TAINT_PROPRIETARY_MODULE;
}
}
@@ -1470,7 +1473,9 @@
module_unload_init(mod);

/* Set up license info based on the info section */
- set_license(mod, get_modinfo(sechdrs, infoindex, "license"));
+ set_license(mod,
+ get_modinfo(sechdrs, infoindex, "license"),
+ get_modinfo(sechdrs, infoindex, "author"));

/* Fix up syms, so that st_value is a pointer to location. */
err = simplify_symbols(sechdrs, symindex, strtab, versindex, pcpuindex,

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/