函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

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

函数名称:print_graph_return

函数原型:static enum print_line_t print_graph_return(struct ftrace_graph_ret *trace, struct trace_seq *s, struct trace_entry *ent, struct trace_iterator *iter, unsigned int flags)

返回类型:enum print_line_t

参数:

类型参数名称
struct ftrace_graph_ret *trace
struct trace_seq *s
struct trace_entry *ent
struct trace_iterator *iter
unsigned intflags
905  duration等于rettimecalltime
906  data等于private
907  tr等于tr
908  pid等于pid
909  cpu等于cpu
910  func_match等于1
913  如果Return check for irq code* returns 1 if* - we are inside irq code* - we just left irq code* returns 0 if* - funcgraph-interrupts option is set* - we are not inside irq code则返回:TRACE_TYPE_HANDLED
916  如果data
918  cpu等于cpu
920  cpu_data等于per_cpu_ptr(cpu_data, cpu)
927  depth等于depth减1
929  如果depth小于FTRACE_RETFUNC_DEPTH且非WARN_ON_ONCE(depth < 0)则
931  如果enter_funcs[depth]不等于Current function func_match等于0
933  enter_funcs[depth]等于0
937  print_graph_prologue(iter, s, 0, 0, flags)
940  print_graph_duration(tr, duration, s, flags)
943 i小于depthTRACE_GRAPH_INDENT循环race_seq_putc - trace sequence printing of simple character*@s: trace sequence descriptor*@c: simple character to record* The tracer may use either the sequence operations or its own* copy to user routines
953  如果func_match且非flags按位与TRACE_GRAPH_PRINT_TAIL的值则race_seq_puts - trace sequence printing of simple string*@s: trace sequence descriptor*@str: simple string to record* The tracer may use either the sequence operations or its own* copy to user routines
955  否则race_seq_printf - sequence printing of trace information*@s: trace sequence descriptor*@fmt: printf format string* The tracer may use either sequence operations or its own* copy to user routines
959  如果flags按位与TRACE_GRAPH_PRINT_OVERRUNrace_seq_printf - sequence printing of trace information*@s: trace sequence descriptor*@fmt: printf format string* The tracer may use either sequence operations or its own* copy to user routines
963  print_graph_irq(iter, Current function , TRACE_GRAPH_RET, cpu, pid, flags)
966  返回:Several functions return TRACE_TYPE_PARTIAL_LINE if the trace_seq* overflowed, and TRACE_TYPE_HANDLED otherwise. This helper function* simplifies those functions and keeps them in sync.
调用者
名称描述
print_graph_function_flags