Lines Matching refs:ip
32 ftrace_call_replace(unsigned long ip, unsigned long addr, int link) in ftrace_call_replace() argument
39 op = create_branch((unsigned int *)ip, addr, link ? 1 : 0); in ftrace_call_replace()
45 ftrace_modify_code(unsigned long ip, unsigned int old, unsigned int new) in ftrace_modify_code() argument
60 if (probe_kernel_read(&replaced, (void *)ip, MCOUNT_INSN_SIZE)) in ftrace_modify_code()
68 if (patch_instruction((unsigned int *)ip, new)) in ftrace_modify_code()
77 static int test_24bit_addr(unsigned long ip, unsigned long addr) in test_24bit_addr() argument
82 return create_branch((unsigned int *)ip, addr, 0); in test_24bit_addr()
92 static unsigned long find_bl_target(unsigned long ip, unsigned int op) in find_bl_target() argument
101 return ip + (long)offset; in find_bl_target()
111 unsigned long ip = rec->ip; in __ftrace_make_nop() local
115 if (probe_kernel_read(&op, (void *)ip, sizeof(int))) in __ftrace_make_nop()
125 tramp = (void *)find_bl_target(ip, op); in __ftrace_make_nop()
127 pr_devel("ip:%lx jumps to %p", ip, tramp); in __ftrace_make_nop()
163 if (patch_instruction((unsigned int *)ip, op)) in __ftrace_make_nop()
176 unsigned long ip = rec->ip; in __ftrace_make_nop() local
179 if (probe_kernel_read(&op, (void *)ip, MCOUNT_INSN_SIZE)) in __ftrace_make_nop()
189 tramp = find_bl_target(ip, op); in __ftrace_make_nop()
199 pr_devel("ip:%lx jumps to %lx", ip, tramp); in __ftrace_make_nop()
233 if (patch_instruction((unsigned int *)ip, op)) in __ftrace_make_nop()
244 unsigned long ip = rec->ip; in ftrace_make_nop() local
252 if (test_24bit_addr(ip, addr)) { in ftrace_make_nop()
254 old = ftrace_call_replace(ip, addr, 1); in ftrace_make_nop()
256 return ftrace_modify_code(ip, old, new); in ftrace_make_nop()
294 void *ip = (void *)rec->ip; in __ftrace_make_call() local
297 if (probe_kernel_read(op, ip, sizeof(op))) in __ftrace_make_call()
321 if (!create_branch(ip, rec->arch.mod->arch.tramp, BRANCH_SET_LINK)) { in __ftrace_make_call()
326 if (patch_branch(ip, rec->arch.mod->arch.tramp, BRANCH_SET_LINK)) { in __ftrace_make_call()
338 unsigned long ip = rec->ip; in __ftrace_make_call() local
341 if (probe_kernel_read(&op, (void *)ip, MCOUNT_INSN_SIZE)) in __ftrace_make_call()
357 op = create_branch((unsigned int *)ip, in __ftrace_make_call()
364 pr_devel("write to %lx\n", rec->ip); in __ftrace_make_call()
366 if (patch_instruction((unsigned int *)ip, op)) in __ftrace_make_call()
376 unsigned long ip = rec->ip; in ftrace_make_call() local
384 if (test_24bit_addr(ip, addr)) { in ftrace_make_call()
387 new = ftrace_call_replace(ip, addr, 1); in ftrace_make_call()
388 return ftrace_modify_code(ip, old, new); in ftrace_make_call()
411 unsigned long ip = (unsigned long)(&ftrace_call); in ftrace_update_ftrace_func() local
416 new = ftrace_call_replace(ip, (unsigned long)func, 1); in ftrace_update_ftrace_func()
417 ret = ftrace_modify_code(ip, old, new); in ftrace_update_ftrace_func()
488 unsigned long ip = (unsigned long)(&ftrace_graph_call); in ftrace_enable_ftrace_graph_caller() local
493 old = ftrace_call_replace(ip, stub, 0); in ftrace_enable_ftrace_graph_caller()
494 new = ftrace_call_replace(ip, addr, 0); in ftrace_enable_ftrace_graph_caller()
496 return ftrace_modify_code(ip, old, new); in ftrace_enable_ftrace_graph_caller()
501 unsigned long ip = (unsigned long)(&ftrace_graph_call); in ftrace_disable_ftrace_graph_caller() local
506 old = ftrace_call_replace(ip, addr, 0); in ftrace_disable_ftrace_graph_caller()
507 new = ftrace_call_replace(ip, stub, 0); in ftrace_disable_ftrace_graph_caller()
509 return ftrace_modify_code(ip, old, new); in ftrace_disable_ftrace_graph_caller()
517 unsigned long prepare_ftrace_return(unsigned long parent, unsigned long ip) in prepare_ftrace_return() argument
530 trace.func = ip; in prepare_ftrace_return()
537 if (ftrace_push_return_trace(parent, ip, &trace.depth, 0) == -EBUSY) in prepare_ftrace_return()