CONFIG_FTRACECONFIG_HAVE_FUNCTION_TRACERCONFIG_HAVE_FUNCTION_GRAPH_TRACERCONFIG_HAVE_DYNAMIC_FTRACECONFIG_HAVE_FTRACE_MCOUNT_RECORD
将 ftrace 信息转储到 kmsg 缓冲区
要随时从源代码中将 ftrace 信息转储到 kmsg 缓冲区,请调用ftrace_dump(DUMP_ALL) 函数。
- 要增大 ftrace 环形缓冲区的大小,请运行以下命令:
启用工作队列跟踪
-
要启用工作队列跟踪,请运行以下命令:
示例输出:
启用中断请求(IRQ)跟踪
-
要启用中断跟踪,请运行以下命令:
示例输出:
启用调度器跟踪
-
要跟踪任务之间的上下文切换,请运行以下命令以启用
sched_switch跟踪器:示例输出:
查找 IRQ 延迟
- 要查找系统中的最大 IRQ 延迟和抢占延迟,请按如下方式为
IRQOFF和PREEMPTIONOFF启用 ftrace 配置:要使此配置生效,请重新编译内核。此配置可以有效检测毫秒级延迟。 - 要启用跟踪,请运行以下命令:
- 要查找系统中观测到的最大延迟,请配置
tracing_max_latency = 0。要检测任何超过指定限制的延迟,请以微秒为单位设置阈值级别。例如,
Documentation/trace/ftrace.txt 文件。
