Browse Source

sh: do not latency trace idle.

Description snipped from Steven Rostedt's PPC patch:

    When idle is called, interrupts are blocked, but the idle
    function will still wake up on an interrupt. The problem is
    that the interrupt disabled latency tracer will take this call
    to idle as a latency.

    This patch disables the latency tracing when going into idle.

Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Paul Mundt 16 years ago
parent
commit
f74c034d52
1 changed files with 4 additions and 0 deletions
  1. 4 0
      arch/sh/kernel/process_32.c

+ 4 - 0
arch/sh/kernel/process_32.c

@@ -59,8 +59,12 @@ static void default_idle(void)
 		clear_thread_flag(TIF_POLLING_NRFLAG);
 		smp_mb__after_clear_bit();
 		set_bl_bit();
+		stop_critical_timings();
+
 		while (!need_resched())
 			cpu_sleep();
+
+		start_critical_timings();
 		clear_bl_bit();
 		set_thread_flag(TIF_POLLING_NRFLAG);
 	} else