summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRoland Vossen <rvossen@broadcom.com>2011-04-07 11:20:58 +0200
committerGreg Kroah-Hartman <gregkh@suse.de>2011-04-25 16:45:22 -0700
commit7816c45bf13255157c00fb8aca86cb64d825e878 (patch)
treee5f37f71a0d63fa4e6fefbf394a68aef685c6240
parentcb63e4c967541402b79a92a31c841744ca17d1aa (diff)
modules: Enabled dynamic debugging for staging modules
Driver modules from the staging directory are marked 'tainted' by module.c. Subsequently, tainted modules are denied dynamic debugging. This is unwanted behavior, since staging modules should be able to use the dynamic debugging mechanism. Please merge this also into the staging-linus branch. Signed-off-by: Roland Vossen <rvossen@broadcom.com> Acked-by: Jason Baron <jbaron@redhat.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
-rw-r--r--kernel/module.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/kernel/module.c b/kernel/module.c
index d5938a5c19c4..4d5c16aae745 100644
--- a/kernel/module.c
+++ b/kernel/module.c
@@ -2790,7 +2790,7 @@ static struct module *load_module(void __user *umod,
}
/* This has to be done once we're sure module name is unique. */
- if (!mod->taints)
+ if (!mod->taints || mod->taints == (1U<<TAINT_CRAP))
dynamic_debug_setup(info.debug, info.num_debug);
/* Find duplicate symbols */
@@ -2827,7 +2827,7 @@ static struct module *load_module(void __user *umod,
module_bug_cleanup(mod);
ddebug:
- if (!mod->taints)
+ if (!mod->taints || mod->taints == (1U<<TAINT_CRAP))
dynamic_debug_remove(info.debug);
unlock:
mutex_unlock(&module_mutex);