int longjmp_break_handler(struct kprobe *p, struct pt_regs *regs) 
int __kprobes longjmp_break_handler(struct kprobe *p, struct pt_regs *regs) 
int longjmp_break_handler(struct kprobe *p, struct pt_regs *regs){	u8 *addr = (u8 *) (regs->rip - 1);	unsigned long stack_addr = (unsigned long)jprobe_saved_rsp;	struct jprobe *jp = container_of(p, struct jprobe, kp);	if ((addr > (u8 *) jprobe_return) && (addr < (u8 *) jprobe_return_end)) {		if ((long *)regs->rsp != jprobe_saved_rsp) {			struct pt_regs *saved_regs =			    container_of(jprobe_saved_rsp, struct pt_regs, rsp);			printk("current rsp %p does not match saved rsp %p\n",			       (long *)regs->rsp, jprobe_saved_rsp);			printk("Saved registers for jprobe %p\n", jp);			show_registers(saved_regs);			printk("Current registers\n");			show_registers(regs);			BUG();		}		*regs = jprobe_saved_regs;		memcpy((kprobe_opcode_t *) stack_addr, jprobes_stack,		       MIN_STACK_SIZE(stack_addr));		return 1;	}	return 0;}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/0f2fbdcbb041f9087da42f8ac2e81f2817098d2a/kprobes.c/buggy/arch/x86_64/kernel/kprobes.c