Re: [PATCH ??] Re: incorrect taint of ndiswrapper

Randy Dunlap
2006-10-27T15:33:28Z

On Fri, 27 Oct 2006 16:23:39 +0200 Arjan van de Ven wrote:

> > ---
> > From: Randy Dunlap <randy.dunlap@oracle.com>
> >
> > For ndiswrapper and driverloader, don't set the module->taints
> > flags, just set the kernel global tainted flag.
> > This should allow ndiswrapper to continue to use GPL symbols.
> > Not tested.
>
>
> can we put something in feature-removal that we'll undo this in say 6
> months?

It's open for discussion AFAIK.

> ndiswrapper is easy to fix to not use the internals of the queue_work
> api, and just use schedule_work() instead. At that time the
> functionality as a whole is still the right one.
> (it's a separate question if ndiswrapper should be in this table;
> driverloader should be, it's non-GPL at all, so that part of your patch
> is broken)

OK, here's the replacement for only ndiswrapper, not driverloader.

---
From: Randy Dunlap <randy.dunlap@oracle.com>

For ndiswrapper, don't set the module->taints flags,
just set the kernel global tainted flag.
This should allow ndiswrapper to continue to use GPL symbols.
Not tested.

Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com>
---
kernel/module.c | 2 +-
1 files changed, 1 insertion(+), 1 deletion(-)

--- linux-2619-rc3-pv.orig/kernel/module.c
+++ linux-2619-rc3-pv/kernel/module.c
@@ -1718,7 +1718,7 @@ static struct module *load_module(void _
set_license(mod, get_modinfo(sechdrs, infoindex, "license"));

if (strcmp(mod->name, "ndiswrapper") == 0)
- add_taint_module(mod, TAINT_PROPRIETARY_MODULE);
+ add_taint(TAINT_PROPRIETARY_MODULE);
if (strcmp(mod->name, "driverloader") == 0)
add_taint_module(mod, TAINT_PROPRIETARY_MODULE);