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
	
	Block a user