summaryrefslogtreecommitdiffstats
path: root/arch/s390
diff options
context:
space:
mode:
authorHeiko Carstens <heiko.carstens@de.ibm.com>2008-11-14 18:18:04 +0100
committerMartin Schwidefsky <schwidefsky@de.ibm.com>2008-11-14 18:18:53 +0100
commit632448f65001c4935ed0d3bb362017d773da2eca (patch)
treed1daf415fecdc1b9e353e3ad82e30c555961d325 /arch/s390
parentaf4c68740e848019d8d14c52704ed8eacceddac6 (diff)
downloadlinux-632448f65001c4935ed0d3bb362017d773da2eca.tar.gz
linux-632448f65001c4935ed0d3bb362017d773da2eca.tar.bz2
linux-632448f65001c4935ed0d3bb362017d773da2eca.zip
[S390] ftrace: disable tracing on idle psw
Disable tracing on idle psw. Otherwise it would give us huge preempt off times for idle. Which is rather pointless. Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com> Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Diffstat (limited to 'arch/s390')
-rw-r--r--arch/s390/kernel/process.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/arch/s390/kernel/process.c b/arch/s390/kernel/process.c
index 3e2c05cb6a87..04f8c67a6101 100644
--- a/arch/s390/kernel/process.c
+++ b/arch/s390/kernel/process.c
@@ -136,9 +136,12 @@ static void default_idle(void)
return;
}
trace_hardirqs_on();
+ /* Don't trace preempt off for idle. */
+ stop_critical_timings();
/* Wait for external, I/O or machine check interrupt. */
__load_psw_mask(psw_kernel_bits | PSW_MASK_WAIT |
PSW_MASK_IO | PSW_MASK_EXT);
+ start_critical_timings();
}
void cpu_idle(void)