Commit 802c8a61 authored by Jiri Olsa's avatar Jiri Olsa Committed by Ingo Molnar

Revert "perf: Do not allow optimized switch for non-cloned events"

This reverts commit 1f9a7268.

With the fix of the initial state for the cloned event we now correctly
handle the error described in:

  1f9a7268 perf: Do not allow optimized switch for non-cloned events

so we can revert it.

I made an automated test for this, but its not suitable for automated
perf tests framework. It needs to be customized for each machine (the
more cpu the higher numbers for GROUPS/WORKERS/BYTES) and it could take
longer time to hit the issue.
Signed-off-by: default avatarJiri Olsa <jolsa@kernel.org>
Signed-off-by: default avatarPeter Zijlstra (Intel) <peterz@infradead.org>
Cc: Frederic Weisbecker <fweisbec@gmail.com>
Cc: Stephane Eranian <eranian@google.com>
Cc: Jiri Olsa <jolsa@redhat.com>
Cc: Arnaldo Carvalho de Melo <acme@kernel.org>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Link: http://lkml.kernel.org/r/20140910143535.GD2409@krava.brq.redhat.comSigned-off-by: default avatarIngo Molnar <mingo@kernel.org>
parent 1929def9
...@@ -2375,7 +2375,7 @@ static void perf_event_context_sched_out(struct task_struct *task, int ctxn, ...@@ -2375,7 +2375,7 @@ static void perf_event_context_sched_out(struct task_struct *task, int ctxn,
next_parent = rcu_dereference(next_ctx->parent_ctx); next_parent = rcu_dereference(next_ctx->parent_ctx);
/* If neither context have a parent context; they cannot be clones. */ /* If neither context have a parent context; they cannot be clones. */
if (!parent || !next_parent) if (!parent && !next_parent)
goto unlock; goto unlock;
if (next_parent == ctx || next_ctx == parent || next_parent == parent) { if (next_parent == ctx || next_ctx == parent || next_parent == parent) {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment