From: Max Filippov Date: Sun, 7 Apr 2013 21:29:19 +0000 (+0400) Subject: xtensa: provide custom CALLER_ADDR* implementations X-Git-Tag: v3.10-rc1~24^2~7 X-Git-Url: http://git.openpandora.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=3ae908c99e944a7a5c4f4b2d8c603a6bc57b728b;p=pandora-kernel.git xtensa: provide custom CALLER_ADDR* implementations Definition of CALLER_ADDR* through __builtin_return_address makes compiler insert calls to __xtensa_libgcc_window_spill, which in turn makes fast_syscall_spill_registers syscall that clobbers registers when called from the kernel mode, leading to invalid opcode exceptions on return to userspace. Provide definition for CALLER_ADDR0 as MAKE_PC_FROM_RA(a0, a1) and in case CONFIG_FRAME_POINTER is enabled extract CALLER_ADDR{1-3} from stack. Signed-off-by: Max Filippov Signed-off-by: Chris Zankel --- Reading git-diff-tree failed