Free the current pred when clearing the filters via the filter files.
Signed-off-by: Tom Zanussi <[email protected]>
---
kernel/trace/trace_events.c | 2 ++
1 files changed, 2 insertions(+), 0 deletions(-)
diff --git a/kernel/trace/trace_events.c b/kernel/trace/trace_events.c
index fdab30d..a938138 100644
--- a/kernel/trace/trace_events.c
+++ b/kernel/trace/trace_events.c
@@ -516,6 +516,7 @@ event_filter_write(struct file *filp, const char __user *ubuf, size_t cnt,
if (pred->clear) {
filter_free_preds(call);
+ filter_free_pred(pred);
return cnt;
}
@@ -581,6 +582,7 @@ subsystem_filter_write(struct file *filp, const char __user *ubuf, size_t cnt,
if (pred->clear) {
filter_free_subsystem_preds(system);
+ filter_free_pred(pred);
return cnt;
}
--
1.5.6.3
Commit-ID: 09f1f245c79585383de63e3ca54d0f91824bff3a
Gitweb: http://git.kernel.org/tip/09f1f245c79585383de63e3ca54d0f91824bff3a
Author: Tom Zanussi <[email protected]>
AuthorDate: Tue, 24 Mar 2009 02:14:11 -0500
Committer: Ingo Molnar <[email protected]>
CommitDate: Tue, 24 Mar 2009 08:26:51 +0100
tracing/filters: free pred when clearing filters
Impact: fix (small) per trace filter modification memory leak
Free the current pred when clearing the filters via the filter files.
Signed-off-by: Tom Zanussi <[email protected]>
Cc: Steven Rostedt <[email protected]>
Cc: =?ISO-8859-1?Q?Fr=E9d=E9ric?= Weisbecker <[email protected]>
LKML-Reference: <1237878851.8339.58.camel@charm-linux>
Signed-off-by: Ingo Molnar <[email protected]>
---
kernel/trace/trace_events.c | 2 ++
1 files changed, 2 insertions(+), 0 deletions(-)
diff --git a/kernel/trace/trace_events.c b/kernel/trace/trace_events.c
index fdab30d..a938138 100644
--- a/kernel/trace/trace_events.c
+++ b/kernel/trace/trace_events.c
@@ -516,6 +516,7 @@ event_filter_write(struct file *filp, const char __user *ubuf, size_t cnt,
if (pred->clear) {
filter_free_preds(call);
+ filter_free_pred(pred);
return cnt;
}
@@ -581,6 +582,7 @@ subsystem_filter_write(struct file *filp, const char __user *ubuf, size_t cnt,
if (pred->clear) {
filter_free_subsystem_preds(system);
+ filter_free_pred(pred);
return cnt;
}