void arch_copy_kprobe(struct kprobe *p) 
void __kprobes arch_copy_kprobe(struct kprobe *p) 
void arch_copy_kprobe(struct kprobe *p){	s32 *ripdisp;	memcpy(p->ainsn.insn, p->addr, MAX_INSN_SIZE);	ripdisp = is_riprel(p->ainsn.insn);	if (ripdisp) {		/*		 * The copied instruction uses the %rip-relative		 * addressing mode.  Adjust the displacement for the		 * difference between the original location of this		 * instruction and the location of the copy that will		 * actually be run.  The tricky bit here is making sure		 * that the sign extension happens correctly in this		 * calculation, since we need a signed 32-bit result to		 * be sign-extended to 64 bits when it's added to the		 * %rip value and yield the same 64-bit result that the		 * sign-extension of the original signed 32-bit		 * displacement would have given.		 */		s64 disp = (u8 *) p->addr + *ripdisp - (u8 *) p->ainsn.insn;		BUG_ON((s64) (s32) disp != disp); /* Sanity check.  */		*ripdisp = disp;	}	p->opcode = *p->addr;}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/0f2fbdcbb041f9087da42f8ac2e81f2817098d2a/kprobes.c/buggy/arch/x86_64/kernel/kprobes.c