]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/commitdiff
3.14-stable patches
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 14 May 2014 00:04:08 +0000 (17:04 -0700)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 14 May 2014 00:04:08 +0000 (17:04 -0700)
added patches:
tracepoint-do-not-waste-memory-on-mods-with-no-tracepoints.patch

queue-3.14/series
queue-3.14/tracepoint-do-not-waste-memory-on-mods-with-no-tracepoints.patch [new file with mode: 0644]

index 3317296caa21a496357f82fefbf2b601419bfe43..51891ad9a9de6a486b44ad196a2ee1150ead6147 100644 (file)
@@ -11,3 +11,4 @@ blktrace-fix-accounting-of-partially-completed-requests.patch
 netfilter-can-t-fail-and-free-after-table-replacement.patch
 netfilter-nf_tables-set-names-cannot-be-larger-than-15-bytes.patch
 x86-preempt-fix-preemption-for-i386.patch
+tracepoint-do-not-waste-memory-on-mods-with-no-tracepoints.patch
diff --git a/queue-3.14/tracepoint-do-not-waste-memory-on-mods-with-no-tracepoints.patch b/queue-3.14/tracepoint-do-not-waste-memory-on-mods-with-no-tracepoints.patch
new file mode 100644 (file)
index 0000000..789681e
--- /dev/null
@@ -0,0 +1,43 @@
+From 7dec935a3aa04412cba2cebe1524ae0d34a30c24 Mon Sep 17 00:00:00 2001
+From: "Steven Rostedt (Red Hat)" <rostedt@goodmis.org>
+Date: Wed, 26 Feb 2014 10:54:36 -0500
+Subject: tracepoint: Do not waste memory on mods with no tracepoints
+
+From: "Steven Rostedt (Red Hat)" <rostedt@goodmis.org>
+
+commit 7dec935a3aa04412cba2cebe1524ae0d34a30c24 upstream.
+
+No reason to allocate tp_module structures for modules that have no
+tracepoints. This just wastes memory.
+
+Fixes: b75ef8b44b1c "Tracepoint: Dissociate from module mutex"
+Acked-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
+Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ kernel/tracepoint.c |    6 ++++++
+ 1 file changed, 6 insertions(+)
+
+--- a/kernel/tracepoint.c
++++ b/kernel/tracepoint.c
+@@ -641,6 +641,9 @@ static int tracepoint_module_coming(stru
+       struct tp_module *tp_mod, *iter;
+       int ret = 0;
++      if (!mod->num_tracepoints)
++              return 0;
++
+       /*
+        * 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.
+@@ -684,6 +687,9 @@ static int tracepoint_module_going(struc
+ {
+       struct tp_module *pos;
++      if (!mod->num_tracepoints)
++              return 0;
++
+       mutex_lock(&tracepoints_mutex);
+       tracepoint_update_probe_range(mod->tracepoints_ptrs,
+               mod->tracepoints_ptrs + mod->num_tracepoints);