summaryrefslogtreecommitdiff
path: root/kernel/tracepoint.c
diff options
context:
space:
mode:
authorClark Williams <williams@redhat.com>2012-01-25 21:31:16 -0600
committerClark Williams <williams@redhat.com>2012-01-25 21:31:16 -0600
commit974f4b86951972b133b4ec5b36956b979dea08d0 (patch)
tree090b441b1c96f708e8a033c7f88fa383dd1e7cba /kernel/tracepoint.c
parent40a54e2e116950a27dbd0a46a7b1ff8e982de477 (diff)
parent3499d6424f682a58761d827012567c552b053842 (diff)
Merge commit 'v3.2.2' into rt-3.2.2-rt10
Diffstat (limited to 'kernel/tracepoint.c')
-rw-r--r--kernel/tracepoint.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/kernel/tracepoint.c b/kernel/tracepoint.c
index db110b8ae030..f1539decd99d 100644
--- a/kernel/tracepoint.c
+++ b/kernel/tracepoint.c
@@ -634,10 +634,11 @@ static int tracepoint_module_coming(struct module *mod)
int ret = 0;
/*
- * We skip modules that tain the kernel, especially those with different
- * module header (for forced load), to make sure we don't cause a crash.
+ * We skip modules that taint the kernel, especially those with different
+ * module headers (for forced load), to make sure we don't cause a crash.
+ * Staging and out-of-tree GPL modules are fine.
*/
- if (mod->taints)
+ if (mod->taints & ~((1 << TAINT_OOT_MODULE) | (1 << TAINT_CRAP)))
return 0;
mutex_lock(&tracepoints_mutex);
tp_mod = kmalloc(sizeof(struct tp_module), GFP_KERNEL);