Function report |
Source Code:kernel\events\callchain.c |
Create Date:2022-07-28 13:43:08 |
| Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
| home page | Tree |
| Annotation kernel can get tool activity | Download SCCT | Chinese |
Name:get_perf_callchain
Proto:struct perf_callchain_entry *get_perf_callchain(struct pt_regs *regs, u32 init_nr, bool kernel, bool user, u32 max_stack, bool crosstask, bool add_mark)
Type:struct perf_callchain_entry
Parameter:
| Type | Parameter | Name |
|---|---|---|
| struct pt_regs * | regs | |
| u32 | init_nr | |
| bool | kernel | |
| bool | user | |
| u32 | max_stack | |
| bool | crosstask | |
| bool | add_mark |
| 185 | entry = get_callchain_entry( & rctx) |
| 186 | If rctx == -1 Then Return NULL |
| 195 | contexts = 0 |
| 196 | contexts_maxed = false |
| 198 | If kernel && Not ser_mode(regs) determines whether a register set came from user* mode Then |
| 199 | If add_mark Then perf_callchain_store_context( & ctx, PERF_CONTEXT_KERNEL) |
| 201 | perf_callchain_kernel( & ctx, regs) |
| 204 | If user Then |
| 206 | If mm Then regs = task_pt_regs(current process) |
| 208 | Else regs = NULL |
| 212 | If regs Then |
| 218 | If add_mark Then perf_callchain_store_context( & ctx, PERF_CONTEXT_USER) |
| 223 | perf_callchain_user( & ctx, regs) |
| 228 | exit_put : |
| 229 | put_callchain_entry(rctx) |
| 231 | Return entry |
| Name | Describe |
|---|---|
| ____bpf_get_stackid | |
| ____bpf_get_stack | |
| perf_callchain |
| 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 |