*/
int prepare_uretprobe_arm(struct uretprobe_instance *ri, struct pt_regs *regs)
{
- unsigned long bp_offset;
+ unsigned long bp_offset;
- bp_offset = thumb_mode(regs) ? 0x1b : 4 * PROBES_TRAMP_RET_BREAK_IDX;
+ bp_offset = thumb_mode(regs) ? 0x1b : 4 * PROBES_TRAMP_RET_BREAK_IDX;
- /* save original return address */
- ri->ret_addr = (uprobe_opcode_t *)regs->ARM_lr;
+ /* save original return address */
+ ri->ret_addr = (uprobe_opcode_t *)regs->ARM_lr;
- /* replace return address with break point adddress */
- regs->ARM_lr = (unsigned long)(ri->rp->up.insn) + bp_offset;
+ /* replace return address with break point adddress */
+ regs->ARM_lr = (unsigned long)(ri->rp->up.insn) + bp_offset;
- /* save stack pointer address */
- ri->sp = (uprobe_opcode_t *)regs->ARM_sp;
+ /* save stack pointer address */
+ ri->sp = (uprobe_opcode_t *)regs->ARM_sp;
- /* Set flag of current mode */
- ri->sp = (uprobe_opcode_t *)((long)ri->sp | !!thumb_mode(regs));
+ /* Set flag of current mode */
+ ri->sp = (uprobe_opcode_t *)((long)ri->sp | !!thumb_mode(regs));
- return 0;
+ return 0;
}
/**