mirror of
				https://github.com/torvalds/linux.git
				synced 2025-11-04 02:30:34 +02:00 
			
		
		
		
	uprobes: Move function declarations out of arch
Move the function declarations from the arch headers to the common header, since only the function bodies are architecture-specific. These changes are from Vincent Rabin's uprobes patch. [ oleg: update arch/powerpc/include/asm/uprobes.h ] Signed-off-by: Rabin Vincent <rabin@rab.in> Signed-off-by: David A. Long <dave.long@linaro.org> Signed-off-by: Oleg Nesterov <oleg@redhat.com>
This commit is contained in:
		
							parent
							
								
									f891d8cfb8
								
							
						
					
					
						commit
						3820b4d278
					
				
					 3 changed files with 8 additions and 14 deletions
				
			
		| 
						 | 
				
			
			@ -45,11 +45,4 @@ struct arch_uprobe_task {
 | 
			
		|||
	unsigned long	saved_trap_nr;
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
extern int  arch_uprobe_analyze_insn(struct arch_uprobe *aup, struct mm_struct *mm, unsigned long addr);
 | 
			
		||||
extern int  arch_uprobe_pre_xol(struct arch_uprobe *aup, struct pt_regs *regs);
 | 
			
		||||
extern int  arch_uprobe_post_xol(struct arch_uprobe *aup, struct pt_regs *regs);
 | 
			
		||||
extern bool arch_uprobe_xol_was_trapped(struct task_struct *tsk);
 | 
			
		||||
extern int  arch_uprobe_exception_notify(struct notifier_block *self, unsigned long val, void *data);
 | 
			
		||||
extern void arch_uprobe_abort_xol(struct arch_uprobe *aup, struct pt_regs *regs);
 | 
			
		||||
extern unsigned long arch_uretprobe_hijack_return_addr(unsigned long trampoline_vaddr, struct pt_regs *regs);
 | 
			
		||||
#endif	/* _ASM_UPROBES_H */
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -49,11 +49,4 @@ struct arch_uprobe_task {
 | 
			
		|||
	unsigned int			saved_tf;
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
extern int  arch_uprobe_analyze_insn(struct arch_uprobe *aup, struct mm_struct *mm, unsigned long addr);
 | 
			
		||||
extern int  arch_uprobe_pre_xol(struct arch_uprobe *aup, struct pt_regs *regs);
 | 
			
		||||
extern int  arch_uprobe_post_xol(struct arch_uprobe *aup, struct pt_regs *regs);
 | 
			
		||||
extern bool arch_uprobe_xol_was_trapped(struct task_struct *tsk);
 | 
			
		||||
extern int  arch_uprobe_exception_notify(struct notifier_block *self, unsigned long val, void *data);
 | 
			
		||||
extern void arch_uprobe_abort_xol(struct arch_uprobe *aup, struct pt_regs *regs);
 | 
			
		||||
extern unsigned long arch_uretprobe_hijack_return_addr(unsigned long trampoline_vaddr, struct pt_regs *regs);
 | 
			
		||||
#endif	/* _ASM_UPROBES_H */
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -30,6 +30,7 @@
 | 
			
		|||
struct vm_area_struct;
 | 
			
		||||
struct mm_struct;
 | 
			
		||||
struct inode;
 | 
			
		||||
struct notifier_block;
 | 
			
		||||
 | 
			
		||||
#ifdef CONFIG_ARCH_SUPPORTS_UPROBES
 | 
			
		||||
# include <asm/uprobes.h>
 | 
			
		||||
| 
						 | 
				
			
			@ -125,6 +126,13 @@ extern void uprobe_notify_resume(struct pt_regs *regs);
 | 
			
		|||
extern bool uprobe_deny_signal(void);
 | 
			
		||||
extern bool arch_uprobe_skip_sstep(struct arch_uprobe *aup, struct pt_regs *regs);
 | 
			
		||||
extern void uprobe_clear_state(struct mm_struct *mm);
 | 
			
		||||
extern int  arch_uprobe_analyze_insn(struct arch_uprobe *aup, struct mm_struct *mm, unsigned long addr);
 | 
			
		||||
extern int  arch_uprobe_pre_xol(struct arch_uprobe *aup, struct pt_regs *regs);
 | 
			
		||||
extern int  arch_uprobe_post_xol(struct arch_uprobe *aup, struct pt_regs *regs);
 | 
			
		||||
extern bool arch_uprobe_xol_was_trapped(struct task_struct *tsk);
 | 
			
		||||
extern int  arch_uprobe_exception_notify(struct notifier_block *self, unsigned long val, void *data);
 | 
			
		||||
extern void arch_uprobe_abort_xol(struct arch_uprobe *aup, struct pt_regs *regs);
 | 
			
		||||
extern unsigned long arch_uretprobe_hijack_return_addr(unsigned long trampoline_vaddr, struct pt_regs *regs);
 | 
			
		||||
#else /* !CONFIG_UPROBES */
 | 
			
		||||
struct uprobes_state {
 | 
			
		||||
};
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in a new issue