From: Frederic Weisbecker Date: Sun, 17 Jan 2010 11:15:31 +0000 (+0100) Subject: perf: Don't schedule out/in pinned events on task tick X-Git-Tag: v2.6.34-rc1~197^2~111^2~1 X-Git-Url: https://openfabrics.org/gitweb/?a=commitdiff_plain;h=7defb0f879bbcfe29e3c6f29d685d4f29b7a0700;p=~shefty%2Frdma-dev.git perf: Don't schedule out/in pinned events on task tick We don't need to schedule in/out pinned events on task tick, now that pinned and flexible groups can be scheduled separately. Signed-off-by: Frederic Weisbecker Cc: Peter Zijlstra Cc: Paul Mackerras Cc: Ingo Molnar Cc: Arnaldo Carvalho de Melo --- diff --git a/kernel/perf_event.c b/kernel/perf_event.c index bfc4ee015c8..a90ae694cbc 100644 --- a/kernel/perf_event.c +++ b/kernel/perf_event.c @@ -1525,17 +1525,17 @@ void perf_event_task_tick(struct task_struct *curr) if (ctx) perf_ctx_adjust_freq(ctx); - cpu_ctx_sched_out(cpuctx, EVENT_ALL); + cpu_ctx_sched_out(cpuctx, EVENT_FLEXIBLE); if (ctx) - task_ctx_sched_out(ctx, EVENT_ALL); + task_ctx_sched_out(ctx, EVENT_FLEXIBLE); rotate_ctx(&cpuctx->ctx); if (ctx) rotate_ctx(ctx); - cpu_ctx_sched_in(cpuctx, EVENT_ALL); + cpu_ctx_sched_in(cpuctx, EVENT_FLEXIBLE); if (ctx) - task_ctx_sched_in(curr, EVENT_ALL); + task_ctx_sched_in(curr, EVENT_FLEXIBLE); } static int event_enable_on_exec(struct perf_event *event,