From: Greg Kroah-Hartman Date: Wed, 14 May 2014 00:04:12 +0000 (-0700) Subject: 3.4-stable patches X-Git-Tag: v3.4.91~11 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=133cc269eb221630841c23c486f3823684d67535;p=thirdparty%2Fkernel%2Fstable-queue.git 3.4-stable patches added patches: tracepoint-do-not-waste-memory-on-mods-with-no-tracepoints.patch --- diff --git a/queue-3.4/series b/queue-3.4/series index 738d31a34b7..4768694c1f4 100644 --- a/queue-3.4/series +++ b/queue-3.4/series @@ -3,3 +3,4 @@ n_tty-Fix-n_tty_write-crash-when-echoing-in-raw-mode.patch blktrace-fix-accounting-of-partially-completed-requests.patch netfilter-nf_conntrack-reserve-two-bytes-for-nf_ct_ext-len.patch netfilter-can-t-fail-and-free-after-table-replacement.patch +tracepoint-do-not-waste-memory-on-mods-with-no-tracepoints.patch diff --git a/queue-3.4/tracepoint-do-not-waste-memory-on-mods-with-no-tracepoints.patch b/queue-3.4/tracepoint-do-not-waste-memory-on-mods-with-no-tracepoints.patch new file mode 100644 index 00000000000..1bca35ca043 --- /dev/null +++ b/queue-3.4/tracepoint-do-not-waste-memory-on-mods-with-no-tracepoints.patch @@ -0,0 +1,43 @@ +From 7dec935a3aa04412cba2cebe1524ae0d34a30c24 Mon Sep 17 00:00:00 2001 +From: "Steven Rostedt (Red Hat)" +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)" + +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 +Signed-off-by: Steven Rostedt +Signed-off-by: Greg Kroah-Hartman + +--- + kernel/tracepoint.c | 6 ++++++ + 1 file changed, 6 insertions(+) + +--- a/kernel/tracepoint.c ++++ b/kernel/tracepoint.c +@@ -638,6 +638,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. +@@ -681,6 +684,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);