diff options
Diffstat (limited to 'extras/recipes-kernel/linux/linux-omap/linus/0012-ARM-6540-1-Stop-irqsoff-trace-on-return-to-user.patch')
-rw-r--r-- | extras/recipes-kernel/linux/linux-omap/linus/0012-ARM-6540-1-Stop-irqsoff-trace-on-return-to-user.patch | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/extras/recipes-kernel/linux/linux-omap/linus/0012-ARM-6540-1-Stop-irqsoff-trace-on-return-to-user.patch b/extras/recipes-kernel/linux/linux-omap/linus/0012-ARM-6540-1-Stop-irqsoff-trace-on-return-to-user.patch new file mode 100644 index 00000000..0e55c525 --- /dev/null +++ b/extras/recipes-kernel/linux/linux-omap/linus/0012-ARM-6540-1-Stop-irqsoff-trace-on-return-to-user.patch | |||
@@ -0,0 +1,44 @@ | |||
1 | From d0427fe2982e2f4f644b936fe39636916b69fee1 Mon Sep 17 00:00:00 2001 | ||
2 | From: Todd Android Poynor <toddpoynor@google.com> | ||
3 | Date: Thu, 23 Dec 2010 01:52:44 +0100 | ||
4 | Subject: [PATCH 12/65] ARM: 6540/1: Stop irqsoff trace on return to user | ||
5 | |||
6 | If the irqsoff tracer is in use, stop tracing the interrupt disable | ||
7 | interval when returning to userspace. Tracing userspace execution time | ||
8 | as interrupts disabled time is not helpful for kernel performance | ||
9 | analysis purposes. Only do so if the irqsoff tracer is enabled, to | ||
10 | avoid overhead for lockdep, which doesn't care. | ||
11 | |||
12 | Signed-off-by: Todd Poynor <toddpoynor@google.com> | ||
13 | Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk> | ||
14 | --- | ||
15 | arch/arm/kernel/entry-common.S | 6 ++++++ | ||
16 | 1 files changed, 6 insertions(+), 0 deletions(-) | ||
17 | |||
18 | diff --git a/arch/arm/kernel/entry-common.S b/arch/arm/kernel/entry-common.S | ||
19 | index 8bfa987..80bf8cd 100644 | ||
20 | --- a/arch/arm/kernel/entry-common.S | ||
21 | +++ b/arch/arm/kernel/entry-common.S | ||
22 | @@ -29,6 +29,9 @@ ret_fast_syscall: | ||
23 | ldr r1, [tsk, #TI_FLAGS] | ||
24 | tst r1, #_TIF_WORK_MASK | ||
25 | bne fast_work_pending | ||
26 | +#if defined(CONFIG_IRQSOFF_TRACER) | ||
27 | + asm_trace_hardirqs_on | ||
28 | +#endif | ||
29 | |||
30 | /* perform architecture specific actions before user return */ | ||
31 | arch_ret_to_user r1, lr | ||
32 | @@ -65,6 +68,9 @@ ret_slow_syscall: | ||
33 | tst r1, #_TIF_WORK_MASK | ||
34 | bne work_pending | ||
35 | no_work_pending: | ||
36 | +#if defined(CONFIG_IRQSOFF_TRACER) | ||
37 | + asm_trace_hardirqs_on | ||
38 | +#endif | ||
39 | /* perform architecture specific actions before user return */ | ||
40 | arch_ret_to_user r1, lr | ||
41 | |||
42 | -- | ||
43 | 1.6.6.1 | ||
44 | |||