函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:kernel\events\callchain.c Create Date:2022-07-27 15:04:03
Last Modify:2020-03-12 14:18:49 Copyright©Brick
首页 函数Tree
注解内核,赢得工具下载SCCTEnglish

函数名称:get_perf_callchain

函数原型: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)

返回类型:struct perf_callchain_entry

参数:

类型参数名称
struct pt_regs *regs
u32init_nr
boolkernel
booluser
u32max_stack
boolcrosstask
booladd_mark
185  entry等于get_callchain_entry( & rctx)
186  如果rctx恒等于负1则返回:NULL
189  如果非entry则转到:exit_put
192  entry等于entry
193  max_stack等于max_stack
194  nr等于nr等于init_nr
195  contexts等于0
196  contexts_maxed = false
198  如果kernel且非ser_mode(regs) determines whether a register set came from user* mode
199  如果add_markperf_callchain_store_context( & ctx, PERF_CONTEXT_KERNEL)
201  perf_callchain_kernel( & ctx, regs)
204  如果user
206  如果mmregs等于task_pt_regs(当前进程)
208  否则regs = NULL
212  如果regs
215  如果crosstask则转到:exit_put
228  exit_put :
229  put_callchain_entry(rctx)
231  返回:entry
调用者
名称描述
____bpf_get_stackid
____bpf_get_stack
perf_callchain