From: Coywolf Qi Hunt <qiyong@fc-cn.com>
To: Dave Jones <davej@redhat.com>,
"linux-os (Dick Johnson)" <linux-os@analogic.com>,
linux-kernel@vger.kernel.org
Cc: rms@gnu.org, torvalds@osdl.org
Subject: Re: Add tainting for proprietary helper modules.
Date: Fri, 6 Jan 2006 17:49:33 +0800 [thread overview]
Message-ID: <20060106094933.GB2807@localhost.localdomain> (raw)
In-Reply-To: <20051205173041.GE12664@redhat.com>
On Mon, Dec 05, 2005 at 12:30:41PM -0500, Dave Jones wrote:
> On Mon, Dec 05, 2005 at 08:41:57AM -0500, linux-os (Dick Johnson) wrote:
> >
> > On Fri, 2 Dec 2005, Dave Jones wrote:
> >
> > > Kernels that have had Windows drivers loaded into them are undebuggable.
> > > I've wasted a number of hours chasing bugs filed in Fedora bugzilla
> > > only to find out much later that the user had used such 'helpers',
> > > and their problems were unreproducable without them loaded.
> > >
> > > Acked-by: Arjan van de Ven <arjan@infradead.org>
> > > Signed-off-by: Dave Jones <davej@redhat.com>
> > >
> > > --- linux-2.6.14/kernel/module.c~ 2005-11-29 16:44:00.000000000 -0500
> > > +++ linux-2.6.14/kernel/module.c 2005-11-29 17:03:55.000000000 -0500
> > > @@ -1723,6 +1723,11 @@ static struct module *load_module(void _
> > > /* Set up license info based on the info section */
> > > set_license(mod, get_modinfo(sechdrs, infoindex, "license"));
> > >
> > > + if (strcmp(mod->name, "ndiswrapper") == 0)
> > > + add_taint(TAINT_PROPRIETARY_MODULE);
> > > + if (strcmp(mod->name, "driverloader") == 0)
> > > + add_taint(TAINT_PROPRIETARY_MODULE);
> > > +
> > > #ifdef CONFIG_MODULE_UNLOAD
> > > /* Set up MODINFO_ATTR fields */
> > > setup_modinfo(mod, sechdrs, infoindex);
> >
> > So your are blacklisting certain drivers? If so, you probably
> > should have an array containing their names plus a header-file
> > into which the hundreds, perhaps thousands, of future module-
> > names can be added.
> >
> > ... Not meant as a joke or an affront. User's should be able to
> > know what hardware to NOT purchase because of the proprietary
> > nature of their drivers. Putting a couple "exceptions" into
> > code as above is not good coding practice. If you need to
> > exclude stuff, there should be an exclusion procedure that
> > treats all that stuff equally, no?
>
> There's a point where the effort of creating an array, and
> loops to parse it isn't worth it. For two entries, this
> seemed a lot simpler.
>
> Though if there more additions, I'd agree.
>
> Dave
Hello,
You've hard-coded some module names, that itself `taints' the
kernel source IMO. Blacklisting in kernel is both ugly and unacceptable.
I agree that it would be convenient for you to only check if there's `Not tainted' in oops messages. But I still suggest you to not hard-code them in the
kernel source. Instead you could use some script to grep the problematic module
names in the `Modules linked in' field.
For the long run, we could:
1) Add some other mechanism, like MODULE_LICENSE_STRICT("GPL.strict").
GPL.strict: A GPL.strict module is not only itself licensed under GPL,
but it shall not load/link any binary code (specially non-gpl binaries)
nor any non-GPL.strict code. This definition goes recursively.
Then we let a module without GPL.strict taints the kernel. This time we
treat everyone equally.
2) Fix the gpl in gpl3; follow the above.
--
Coywolf Qi Hunt
next prev parent reply other threads:[~2006-01-06 9:49 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2005-12-03 0:41 Add tainting for proprietary helper modules Dave Jones
2005-12-03 0:58 ` Zan Lynx
2005-12-03 1:11 ` Dave Jones
2005-12-05 13:41 ` linux-os (Dick Johnson)
2005-12-05 17:30 ` Dave Jones
2005-12-05 17:34 ` Stephen Hemminger
2005-12-05 17:54 ` Mark Lord
2005-12-06 20:06 ` Alan Cox
2005-12-06 20:12 ` Brian Gerst
2005-12-06 20:28 ` Alan Cox
2005-12-06 21:34 ` Randy.Dunlap
2006-01-06 9:49 ` Coywolf Qi Hunt [this message]
2006-01-06 10:06 ` Xavier Bestel
2006-01-06 10:46 ` Jan Engelhardt
2006-01-06 11:41 ` Coywolf Qi Hunt
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20060106094933.GB2807@localhost.localdomain \
--to=qiyong@fc-cn.com \
--cc=davej@redhat.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-os@analogic.com \
--cc=rms@gnu.org \
--cc=torvalds@osdl.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox