From: Li Zefan Date: Tue, 21 Apr 2009 09:11:46 +0000 (+0800) Subject: tracing/filters: don't remove old filters when failed to write subsys->filter X-Git-Tag: v2.6.31-rc1~401^2~126 X-Git-Url: https://git.karo-electronics.de/?a=commitdiff_plain;h=e8082f3f5a17d7a7bfc7dd1050a3f958dc034e9a;p=karo-tx-linux.git tracing/filters: don't remove old filters when failed to write subsys->filter If writing subsys->filter returns EINVAL or ENOSPC, the original filters in subsys/ and subsys/events/ will be removed. This is definitely wrong. [ Impact: fix filter setting semantics on error condition ] Signed-off-by: Li Zefan Cc: Tom Zanussi Cc: Steven Rostedt Cc: Frederic Weisbecker LKML-Reference: <49ED8DD2.2070700@cn.fujitsu.com> Signed-off-by: Ingo Molnar --- diff --git a/kernel/trace/trace_events.c b/kernel/trace/trace_events.c index 672b195f86c9..9ea55a7dfdec 100644 --- a/kernel/trace/trace_events.c +++ b/kernel/trace/trace_events.c @@ -600,7 +600,6 @@ subsystem_filter_write(struct file *filp, const char __user *ubuf, size_t cnt, err = filter_add_subsystem_pred(system, pred); if (err < 0) { - filter_free_subsystem_preds(system); filter_free_pred(pred); return err; }