STRUCT CALL_PATH(9)
π
struct call_path(9) β Kernel API Manual, and yes bestie we're getting into it π«Ά
πΈ NAME πΈ
struct call_path is literally a node in the list of calls leading to a function call. That's it, that's the whole name, and honestly? iconic. π
β¨ SYNOPSIS β¨
Okay so here's the struct in all its main-character glory π:
struct call_path {
struct call_path *parent;
struct symbol *sym;
u64 ip;
u64 db_id;
bool in_kernel;
struct rb_node rb_node;
struct rb_root children;
};
No cap, every field is doing its little job. π
π Members π
parentβ call path to the parent function call. It's giving "who brought me here" energy. πsymβ symbol of function called. The main character of this particular call, lowkey. βipβ only ifsymis null, the ip of the function. Periodt. πdb_idβ id used for db-export. It's the little ID tag for the db-export vibe. π·οΈin_kernelβ whether the function is in the kernel. Yes bestie, kernel-space check. π§rb_nodeβ node in parent's tree of called functions. Tree gossip, but make it red-black. π³childrenβ tree of call paths of functions called. The descendants! The next generation! Obsessed. π¦
π¦ Description π¦
In combination with the call_return structure, the call_path structure defines a context-sensitive call-graph. That's the vibe: together they're lowkey building the whole context-sensitive call-graph, and it ate ππ₯
π₯ SEE ALSO π₯
- Kernel file
./tools/perf/util/call-path.hβ go read the source, bestie, it's right there. π struct call_path_root(9)β the cross-ref you want next, fr fr. π¦
xoxo, your Unix bestie π β source/version ./tools/perf/util, dated October 2026, signing off for struct call_path(9) β¨
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms