android_kernel_xiaomi_sm8350/arch
Matt Fleming 7816fecd03 sh: Mark __switch_to() as __notrace_funcgraph
Annotate __switch_to() so that the function graph tracer does not try to
trace it. Use __notrace_funcgraph, as opposed to notrace, so that other
tracers can continue to trace __switch_to().

The reason that we don't want to trace __switch_to() with the function
graph tracer is because of how the return address stack in task_struct
is implemented. When we enter __switch_to we store the real return
address on prev's ret_stack. When we return from __switch_to() we've
patched the return address on the kernel stack to be
return_to_handler. Calling return_to_handler we do,

       -> ftrace_return_to_handler()
       	  -> ftrace_pop_return_ftrace()

Which tries to pop the real return address from current->ret_stack. The
problem being that we stored the return address on prev->ret_stack, but
current now points to next, and next->ret_stack doesn't contain the
correct return address (and is possibly even empty).

Signed-off-by: Matt Fleming <matt@console-pimps.org>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2009-07-11 10:08:06 +09:00
..
alpha alpha: fix percpu build breakage 2009-06-30 18:55:59 -07:00
arm [ARM] 5562/2: at91: add gpio button support for at91sam9g20ek 2009-06-29 11:19:27 +01:00
avr32
blackfin
cris Merge branch 'for-linus' of git://www.jni.nu/cris 2009-06-23 10:47:01 -07:00
frv FRV: Add basic performance counter support 2009-07-01 19:38:31 -07:00
h8300 h8/300: fix incorrect "select" directives in arch/h8300/Kconfig.cpu. 2009-06-23 12:50:05 -07:00
ia64 [IA64] address compiler warnings perfmon.c/salinfo.c 2009-06-30 14:26:34 -07:00
m32r
m68k
m68knommu
microblaze
mips MIPS: Fix CONFIG_FLATMEM version of pfn_valid() 2009-07-03 15:45:29 +01:00
mn10300 Merge git://git.kernel.org/pub/scm/linux/kernel/git/sam/kbuild-fixes 2009-07-04 09:46:01 -07:00
parisc parisc: use generic atomic64 on 32-bit 2009-07-03 03:34:13 +00:00
powerpc Merge branch 'perfcounters-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip 2009-06-30 19:02:59 -07:00
s390 KVM: s390: Allow stfle instruction in the guest 2009-06-28 14:10:30 +03:00
sh sh: Mark __switch_to() as __notrace_funcgraph 2009-07-11 10:08:06 +09:00
sparc sparc32: Fix makefile not generating required files 2009-06-25 19:56:02 -07:00
um UML: Fix some apparent bitrot 2009-06-25 11:22:13 -07:00
x86 Merge git://git.infradead.org/iommu-2.6 2009-07-02 16:51:09 -07:00
xtensa
.gitignore
Kconfig