diff options
author | Ingo Molnar <mingo@elte.hu> | 2011-12-05 14:34:00 +0100 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2011-12-05 14:34:00 +0100 |
commit | dc440d10e1668b15fe704a23adb9b53fbbb24a44 (patch) | |
tree | badea13d8ad1464283d12d7e40c08e748b9209d7 | |
parent | 2c3757e54e0d95f47bdc160fdc4f14849f3437cf (diff) | |
parent | d3d9acf646679c1981032b0985b386d12fccc60c (diff) | |
download | lwn-dc440d10e1668b15fe704a23adb9b53fbbb24a44.tar.gz lwn-dc440d10e1668b15fe704a23adb9b53fbbb24a44.zip |
Merge branch 'tip/perf/urgent' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace into perf/urgent
-rw-r--r-- | kernel/trace/trace_events_filter.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/kernel/trace/trace_events_filter.c b/kernel/trace/trace_events_filter.c index 816d3d074979..d6e7926dcd26 100644 --- a/kernel/trace/trace_events_filter.c +++ b/kernel/trace/trace_events_filter.c @@ -1686,7 +1686,7 @@ static int replace_system_preds(struct event_subsystem *system, * replace the filter for the call. */ filter = call->filter; - call->filter = filter_item->filter; + rcu_assign_pointer(call->filter, filter_item->filter); filter_item->filter = filter; fail = false; @@ -1741,7 +1741,7 @@ int apply_event_filter(struct ftrace_event_call *call, char *filter_string) filter = call->filter; if (!filter) goto out_unlock; - call->filter = NULL; + RCU_INIT_POINTER(call->filter, NULL); /* Make sure the filter is not being used */ synchronize_sched(); __free_filter(filter); @@ -1782,7 +1782,7 @@ out: * string */ tmp = call->filter; - call->filter = filter; + rcu_assign_pointer(call->filter, filter); if (tmp) { /* Make sure the call is done with the filter */ synchronize_sched(); |