tracing/function-return-tracer: call prepare_ftrace_return by registers
Impact: Optimize a bit the function return tracer This patch changes the calling convention of prepare_ftrace_return to pass its arguments by register. This will optimize it a bit and prepare it to support dynamic tracing. Signed-off-by: Frederic Weisbecker <fweisbec@gmail.com> Signed-off-by: Ingo Molnar <mingo@elte.hu>
This commit is contained in:
parent
62d59d17a5
commit
1dc1c6adf3
|
@ -1217,12 +1217,9 @@ trace_return:
|
|||
pushl %eax
|
||||
pushl %ecx
|
||||
pushl %edx
|
||||
movl 0xc(%esp), %eax
|
||||
pushl %eax
|
||||
movl 0xc(%esp), %edx
|
||||
lea 0x4(%ebp), %eax
|
||||
pushl %eax
|
||||
call prepare_ftrace_return
|
||||
addl $8, %esp
|
||||
popl %edx
|
||||
popl %ecx
|
||||
popl %eax
|
||||
|
|
|
@ -95,7 +95,6 @@ unsigned long ftrace_return_to_handler(void)
|
|||
* Hook the return address and push it in the stack of return addrs
|
||||
* in current thread info.
|
||||
*/
|
||||
asmlinkage
|
||||
void prepare_ftrace_return(unsigned long *parent, unsigned long self_addr)
|
||||
{
|
||||
unsigned long old;
|
||||
|
|
Loading…
Reference in New Issue