[REFACTOR] move arch dependent part
authorVyacheslav Cherkashin <v.cherkashin@samsung.com>
Tue, 26 Mar 2013 09:20:50 +0000 (13:20 +0400)
committerVyacheslav Cherkashin <v.cherkashin@samsung.com>
Tue, 26 Mar 2013 09:20:50 +0000 (13:20 +0400)
uprobe/arch/asm-arm/swap_uprobes.c
uprobe/swap_uprobes.c

index dff8121..ffc3cd8 100644 (file)
@@ -598,6 +598,9 @@ int arch_prepare_uprobe(struct kprobe *p, struct task_struct *task, int atomic)
 void arch_prepare_uretprobe_hl(struct kretprobe_instance *ri,
                               struct pt_regs *regs)
 {
+       ri->ret_addr = (kprobe_opcode_t *)regs->ARM_lr;
+       ri->sp = (kprobe_opcode_t *)regs->ARM_sp;
+
        /* Set flag of current mode */
        ri->sp = (kprobe_opcode_t *)((long)ri->sp | !!thumb_mode(regs));
 
index 0331c7b..ab69d86 100644 (file)
@@ -334,8 +334,6 @@ static int pre_handler_uretprobe(struct kprobe *p, struct pt_regs *regs)
                ri->rp = rp;
                ri->rp2 = NULL;
                ri->task = current;
-               ri->ret_addr = (kprobe_opcode_t *)regs->ARM_lr;
-               ri->sp = (kprobe_opcode_t *)regs->ARM_sp;
 
                arch_prepare_uretprobe_hl(ri, regs);