Function report |
Source Code:arch\x86\kernel\unwind_orc.c |
Create Date:2022-07-28 08:50:50 |
Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
home page | Tree |
Annotation kernel can get tool activity | Download SCCT | Chinese |
Name:orc_find
Proto:static struct orc_entry *orc_find(unsigned long ip)
Type:struct orc_entry
Parameter:
Type | Parameter | Name |
---|---|---|
unsigned long | ip |
145 | If Not orc_init Then Return NULL |
152 | If ip >= LOOKUP_START_IP && ip < LOOKUP_STOP_IP Then |
155 | idx = (ip - LOOKUP_START_IP) / LOOKUP_BLOCK_SIZE |
157 | If Value for the false possibility is greater at compile time((idx >= lookup_num_blocks - 1)) Then |
158 | orc_warn("WARNING: bad lookup idx: idx=%u num=%u ip=%pB\n", idx, lookup_num_blocks, (void * )ip) |
160 | Return NULL |
163 | start = orc_lookup[idx] |
164 | stop = orc_lookup[idx + 1] + 1 |
166 | If Value for the false possibility is greater at compile time((__start_orc_unwind + start >= __stop_orc_unwind) || (__start_orc_unwind + stop > __stop_orc_unwind)) Then |
168 | orc_warn("WARNING: bad lookup value: idx=%u num=%u start=%u stop=%u ip=%pB\n", idx, lookup_num_blocks, start, stop, (void * )ip) |
170 | Return NULL |
173 | Return __orc_find(__start_orc_unwind_ip + start, __start_orc_unwind + start, stop - start, ip) |
178 | If init_kernel_text(ip) Then Return __orc_find(__start_orc_unwind_ip, __start_orc_unwind, __stop_orc_unwind_ip - __start_orc_unwind_ip, ip) |
183 | orc = orc_module_find(ip) |
187 | Return orc_ftrace_find(ip) |
Name | Describe |
---|---|
unwind_next_frame |
Source code conversion tool public plug-in interface | X |
---|---|
Support c/c++/esqlc/java Oracle/Informix/Mysql Plug-in can realize: logical Report Code generation and batch code conversion |