Lines Matching defs:ip
53 static inline unsigned long orc_ip(const int *ip)
55 return (unsigned long)ip + *ip;
59 unsigned int num_entries, unsigned long ip)
77 if (orc_ip(mid) <= ip) {
88 static struct orc_entry *orc_module_find(unsigned long ip)
92 mod = __module_address(ip);
96 return __orc_find(mod->arch.orc_unwind_ip, mod->arch.orc_unwind, mod->arch.num_orcs, ip);
99 static struct orc_entry *orc_module_find(unsigned long ip)
106 static struct orc_entry *orc_find(unsigned long ip);
118 static struct orc_entry *orc_ftrace_find(unsigned long ip)
123 ops = ftrace_ops_trampoline(ip);
133 /* Now place tramp_addr to the location within the trampoline ip is at */
134 offset = ip - ops->trampoline;
138 if (ip == tramp_addr)
144 static struct orc_entry *orc_ftrace_find(unsigned long ip)
150 static struct orc_entry *orc_find(unsigned long ip)
154 if (ip == 0)
158 if (ip >= LOOKUP_START_IP && ip < LOOKUP_STOP_IP) {
161 idx = (ip - LOOKUP_START_IP) / LOOKUP_BLOCK_SIZE;
164 orc_warn("WARNING: bad lookup idx: idx=%u num=%u ip=%pB\n",
165 idx, lookup_num_blocks, (void *)ip);
174 orc_warn("WARNING: bad lookup value: idx=%u num=%u start=%u stop=%u ip=%pB\n",
175 idx, lookup_num_blocks, start, stop, (void *)ip);
180 __start_orc_unwind + start, stop - start, ip);
184 if (is_kernel_inittext(ip))
186 __stop_orc_unwind_ip - __start_orc_unwind_ip, ip);
189 orc = orc_module_find(ip);
193 return orc_ftrace_find(ip);