tracing/filters: clean up filter_add_subsystem_pred()
authorTom Zanussi <tzanussi@gmail.com>
Mon, 23 Mar 2009 08:26:48 +0000 (03:26 -0500)
committerIngo Molnar <mingo@elte.hu>
Mon, 23 Mar 2009 08:30:37 +0000 (09:30 +0100)
commitc4cff064be678f1e8344d907499f2a81282edc19
tree8c020dd399a8eba7ae279283e9a3eeb074c74d88
parentee6cdabc820a29bd607f38d9cb335c3ceddc673b
tracing/filters: clean up filter_add_subsystem_pred()

Impact: cleanup, memory leak fix

This patch cleans up filter_add_subsystem_pred():

- searches for the field before creating a copy of the pred

- fixes memory leak in the case a predicate isn't applied

- if -ENOMEM, makes sure there's no longer a reference to the
  pred so the caller can free the half-finished filter

- changes the confusing i == MAX_FILTER_PRED - 1 comparison
  previously remarked upon

This affects only per-subsystem event filtering.

Signed-off-by: Tom Zanussi <tzanussi@gmail.com>
Cc: Steven Rostedt <rostedt@goodmis.org>
Cc: =?ISO-8859-1?Q?Fr=E9d=E9ric?= Weisbecker <fweisbec@gmail.com>
LKML-Reference: <1237796808.7527.40.camel@charm-linux>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
kernel/trace/trace_events.c
kernel/trace/trace_events_filter.c