tracer ftrace笔记(23)—— ftrace使用笔记
基于msm-5.4
一、各个tracer简介
默认使能的tracer:
/sys/kernel/debug/tracing # cat available_tracers
blk wakeup_dl wakeup_rt wakeup preemptirqsoff preemptoff irqsoff function nop
各tracer作用简介:
blk:
wakeup_dl:
wakeup_rt:
wakeup:
preemptirqsoff:
preemptoff:
irqsoff:
function: 打印函数被哪个函数调用了以及函数运行的上下文,可以设置过滤pid和函数名。
nop:
二、function tracer
1. 用法
/sys/kernel/debug/tracing # cat available_tracers blk wakeup_dl wakeup_rt wakeup preemptirqsoff preemptoff irqsoff function nop /sys/kernel/debug/tracing # echo function > current_tracer /sys/kernel/debug/tracing # echo 595 > set_ftrace_pid //设置要跟踪的线程 /sys/kernel/debug/tracing # echo schedule > set_ftrace_filter //设置要跟踪的函数 /sys/kernel/debug/tracing # echo 1 > tracing_on /sys/kernel/debug/tracing # cat trace_pipe surfaceflinger-595 [001] ...1 26747.217275: schedule <-binder_thread_read surfaceflinger-595 [001] ...1 26747.217803: schedule <-futex_wait_queue_me ...
2. 作用
可以过滤某个线程的某个函数何时被哪个函数调用了,调用时运行在哪个上下文中。
TODO: 可以设置跟踪多个线程或多个函数吗?这个是不是可以多搞几层栈,搞个5-6层。
TODO: 测试每一个,看下这个目录下每个文件的作用。
posted on 2025-01-17 14:42 Hello-World3 阅读(13) 评论(0) 编辑 收藏 举报
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!
2023-01-17 Uid和Gid
2019-01-17 Android开发小问题解决汇总