首页 > 其他分享 >ftrace的trace_options

ftrace的trace_options

时间:2024-08-08 22:06:38浏览次数:6  
标签:选项 ftrace trace 含义 用途 options 追踪

ftrace 中的 trace_options 选项用于控制追踪数据的收集和显示方式。你可以通过 /sys/kernel/debug/tracing/trace_options 文件来设置这些选项。每个选项代表了不同的追踪行为或输出格式。以下是一些常见的 trace_options 选项及其含义:

  1. overwrite

    • 含义:当启用此选项时,如果缓冲区已满,新数据将覆盖旧数据。默认情况下,ftrace 在缓冲区满时会停止记录。
    • 用途:适用于持续监控的场景,确保始终有最新的数据。
  2. nooverwrite

    • 含义:与 overwrite 相反,追踪缓冲区满时不再记录新数据,以防止覆盖旧数据。这是默认行为。
    • 用途:适用于捕获特定时间段内的数据,防止关键数据被新数据覆盖。
  3. irq-info

    • 含义:当启用此选项时,追踪输出中将包含中断请求(IRQ)的额外信息,如中断号和中断状态。
    • 用途:调试与中断相关的问题时很有用。
  4. sym-addr

    • 含义:在追踪输出中显示符号和地址。这会将内核函数的符号名与其地址一起输出。
    • 用途:有助于精确定位内核中的函数地址。
  5. sym-offset

    • 含义:在符号名后显示偏移量。这对于调试特定代码路径中的偏移量问题非常有用。
    • 用途:追踪更细粒度的调用路径,特别是在大函数内的某些偏移位置。
  6. sym-userobj

    • 含义:与用户态的符号结合使用,显示用户空间对象的符号名及其地址。
    • 用途:分析用户态和内核态之间的交互时使用。
  7. latency-format

    • 含义:当启用此选项时,追踪数据将以延迟格式输出,显示每个事件的延迟信息。
    • 用途:用于分析系统延迟,特别是实时系统的性能调优。
  8. funcgraph-abstime

    • 含义:启用后,函数调用图将以绝对时间的形式显示每个函数的开始时间。
    • 用途:分析函数调用的精确时间点。
  9. funcgraph-duration

    • 含义:显示每个函数的持续时间,标注函数的执行时间。
    • 用途:调优函数的性能和执行时间。
  10. funcgraph-cpu

    • 含义:在函数调用图中显示 CPU 信息,指明函数在哪个 CPU 上执行。
    • 用途:多核系统调试时非常有用,能够跟踪函数在哪个核上运行。
  11. sched_switch

    • 含义:启用后,会记录进程调度切换事件。
    • 用途:调试和分析进程调度行为。
  12. verbose

    • 含义:启用详细输出,通常用于调试器内部开发或深入分析追踪数据时使用。
    • 用途:增加追踪数据的详细程度,适用于需要详细上下文信息的情况。

每个选项都可以通过在 /sys/kernel/debug/tracing/trace_options 文件中写入相应的选项名来启用或禁用。例如,启用 overwrite 选项可以通过 echo overwrite > /sys/kernel/debug/tracing/trace_options 来实现。禁用该选项则可以通过 echo nooverwrite > /sys/kernel/debug/tracing/trace_options 来实现。

标签:选项,ftrace,trace,含义,用途,options,追踪
From: https://www.cnblogs.com/linhaostudy/p/18349821

相关文章

  • Linux 利用 ftrace 分析内核调用
    目录一、概述二、ftrace的使用1、常用信息2、指定ftrace跟踪器3、设置要跟踪的函数4、ftrace的开关5、function跟踪程序6、function_graph跟踪程序7、函数过滤器8、跟踪事件三、trace-cmd的使用1、常见命令2、常用选项2.1列出可用的追踪器2.2跟踪特定进程的函......
  • 【技术分享】解决CANoe软件Trace窗口筛选栏空白问题
    引言在汽车电子开发领域,Vector公司提供的CANoe、CANape和CANalyzer软件是我们不可或缺的工具。然而,近期一些用户在更新了Windows系统后,遇到了Trace窗口筛选栏变白的问题。本文将分享一个实用的解决方案,帮助您快速恢复软件功能。问题描述7月11日,Windows系统推送了新的更新。......
  • 【思科模拟器Packet Tracer的一些操作】你见过这样PacketTracer吗
    你见过这样PacketTracer吗?机柜抓包模拟城域网各位网工朋友应该都用过思科模拟器吧PacketTracer是思科系统开发的一款网络模拟器,用于模拟计算机网络中的设备和网络环境。它可以帮助网络工程师或学生在没有真实设备的情况下学习和实验各种网络配置和协议。Pac......
  • 使用ftrace查找Kernel启动阶段的延时原因
    查找Kernel启动阶段的延时原因1.确保内核配置了如下选项CONFIG_FTRACE:"Tracers"CONFIG_FUNCTION_TRACER:"KernelFunctionTracer"CONFIG_FUNCTION_GRAPH_TRACER:"KernelFunctionGraphTracer"2.配置functiongraphtrace到commandlinetracing_thresh=200f......
  • Selenium“没有提供‘moz:firefoxOptions.binary’功能,并且在命令行上没有设置二进制
    我一直在尝试将python脚本移植到我的wsl/bash编码中心中。我继续收到此错误:Traceback(mostrecentcalllast):File"/path/to/my/file.py",line20,in<module>driver=webdriver.Firefox(service=FirefoxService(GeckoDriverManager().install()))Fil......
  • 基于N32L40x CmBacktrace mdk5平台下的移植测试
    首先感谢大神提供的开源库CmBacktrace开源地址:https://github.com/armink/CmBacktrace/releases/latesthttps://gitee.com/Armink/CmBacktraceCmBacktrace是什么CmBacktrace一款针对ARMCortex-M系列MCU的错误代码自动追踪、定位,错误原因自动分析的开源库CmBac......
  • meshtastic traceroute --host 1.1.1.1 给出不一致的结果?
    尝试自动化一些跟踪路由行为。在USB端口上工作,但在--hostIP上不一致。在Windows10上使用python2,以太网连接的IP地址192.168.1.80,远程lorameshtastic主机是192.168.1.87上的lilygoT-Beam|||执行:python-mmeshtastic--host192.168.1.87--tracer......
  • Linux内核-异常输出调用栈CallTrace与Ftrace工具集
    1dump_stack函数打印内核调用堆栈。举个例子:我们定义四个函数aaa、bbb、ccc、ddd,然后bbb中调用aaa,ccc中调用bbb,ddd函数谁都不调用。在入口函数中,我们调用ccc与ddd函数,看看堆栈打印效果如何:#include<linux/module.h>#include<linux/kernel.h>#include<linux/init.h>#incl......
  • 常用System.Text.Json的JsonSerializerOptions配置
    newJsonSerializerOptions{PropertyNamingPolicy=JsonNamingPolicy.CamelCase,//驼峰命名规则Encoder=JavaScriptEncoder.Create(UnicodeRanges.BasicLatin,//基础拉丁文字母UnicodeRanges.CjkUnifiedIdeographs,//中日韩统一的表意文字......
  • X-Frame-Options may only be set via an HTTP header sent along with a documen
    X-Frame-OptionsmayonlybesetviaanHTTPheadersentalongwithadocumen_百度搜索(baidu.com)X-Frame-Options-盼星星盼太阳-博客园(cnblogs.com)vue项目中iframe嵌套其他项目,iframe父子页面传值-盼星星盼太阳-博客园(cnblogs.com)......