ftrace笔记
- mount -t debugfs nodev /sys/kernel/debug
- sysctl kernel.ftrace_enabled=1
- #cat availabe_tracers //查看当前支持的tracer有哪些
- blk function_graph wakeup ... nop
- #echo wakeup > current_tracer
- #echo latency-format > trace_options
- #echo 0 > tracing_max_latency
- #echo 1 > tracing_on
- #chrt -f 5 sleep 1
- #echo 0 > tracing_on
- #cat trace
- #cat buffer_size_kb
- #echo nop > current_tracer
- #echo 10000 > buffer_size_kb
- #cat buffer_size_kb
- #echo function > current_tracer
- #cat trace_pipe > /tmp/trace.out &
- #echo 1 > tracing_on
- #usleep 1
- #echo 0 > tracing_on
- #cat /tmp/trace.out

- echo nofuncgraph-cpu > trace_options
- echo nofuncgraph-duration > trace_options
- echo nofuncgraph-overhead > trace_options
- echo funcgraph-proc > trace_options
- echo funcgrpah-abstime > trace_options

- <match>*
- *<match>
- *<match>*
- #echo 'hrtimer_*' > set_ftrace_filter
- #echo > set_ftrace_filter
- syntax: <function>:<command>:<parameter>
- 1. mod, this command enables function filtering per module
- #echo 'write*:mod:ext3' > set_ftrace_filter
- #echo '!writeback*:mod:ext3' >>set_ftrace_filter
- 2. traceon/traceoff
- these commands trun tracing on and off when the specified functions are hit. The parameter determines how many times the tracing system is turned on and off. If unspecified, there is no limit.
- For example, to disable tracing when a schedule bug is hit in the first 5 times, run:
- #echo '__schedule_bug:traceoff:5' > set_ftrace_filter
- These command are cumulative whether or not they are appended to set_ftrace_filter. To remove a command, prepend it by '!' and drop the parameter:
- #echo '!__schedule_bug:traceoff'
- #echo __do_fault > set_graph_function

- #echo sched_wakeup >> set_event
- #echo '!sched_wakeup' >> set_event
- #echo > set_event
- #echo *:* > set_event
- #echo 'irq:*' > set_event
- #echo 1 > /sys/kernel/debug/tracing/events/sched/sched_wakeup/enable
- #echo 1 > /sys/kernel/debug/tracing/events/sched/enable
- #echo 1 > /sys/kernel/debug/tracing/events/enable

- field-name relation-operatior value //一个predicate
- #cd /sys/kernel/debug/tracing/events/signal/signal_generate
- #echo "((sig >= 10 && sig < 15) || sig == 17) && comm != bash" > filter
- #cd /sys/kernel/debug/tracing/events/sched
- #echo 0 > filter
- #cat sched_switch/filter
- none
- #cat sched_wakeup/filter
- #echo common_pid == 0 > filter
- #cat sched_switch/filter
- common_pid == 0
- #cat sched_wakeup/filter
- common_pid == 0
- #echo prev_pid == 0 > filter
- #cat sched_switch/filter
- prev_pid == 0
- #cat sched_wakeup/filter
- common_pid == 0
- #cd /sys/kernel/debug/tracing
- #echo nop > current_tracer
- #echo 'irq:*' > set_event
- #echo latency-format > trace_options
- #echo 0 > tracing_max_latency
- #echo 1 > tracing_on
- #sleep 1
- #echo 0 > tracing_on
- #cat trace

ftrace笔记的更多相关文章
- linux内核编程笔记【原创】
以下为本人学习笔记,如有转载请注明出处,谢谢 DEFINE_MUTEX(buzzer_mutex); mutex_lock(&buzzer_mutex); mutex_unlock(& ...
- 利用ftrace跟踪内核static tracepoint——实例writeback event
摘要:和很多linux内核子系统一样,static tracepoint有很多层次,其中某个层次都展示给不同层次的开发者来满足他们的不同需求.关于linux tracepoint的详细信息,我们可以在 ...
- 利用ftrace跟踪内核static tracepoint
摘要:和很多linux内核子系统一样,static tracepoint有很多层次,其中某个层次都展示给不同层次的开发者来满足他们的不同需求.关于linux tracepoint的详细信息,我们可以在 ...
- git-简单流程(学习笔记)
这是阅读廖雪峰的官方网站的笔记,用于自己以后回看 1.进入项目文件夹 初始化一个Git仓库,使用git init命令. 添加文件到Git仓库,分两步: 第一步,使用命令git add <file ...
- js学习笔记:webpack基础入门(一)
之前听说过webpack,今天想正式的接触一下,先跟着webpack的官方用户指南走: 在这里有: 如何安装webpack 如何使用webpack 如何使用loader 如何使用webpack的开发者 ...
- SQL Server技术内幕笔记合集
SQL Server技术内幕笔记合集 发这一篇文章主要是方便大家找到我的笔记入口,方便大家o(∩_∩)o Microsoft SQL Server 6.5 技术内幕 笔记http://www.cnbl ...
- PHP-自定义模板-学习笔记
1. 开始 这几天,看了李炎恢老师的<PHP第二季度视频>中的“章节7:创建TPL自定义模板”,做一个学习笔记,通过绘制架构图.UML类图和思维导图,来对加深理解. 2. 整体架构图 ...
- PHP-会员登录与注册例子解析-学习笔记
1.开始 最近开始学习李炎恢老师的<PHP第二季度视频>中的“章节5:使用OOP注册会员”,做一个学习笔记,通过绘制基本页面流程和UML类图,来对加深理解. 2.基本页面流程 3.通过UM ...
- NET Core-学习笔记(三)
这里将要和大家分享的是学习总结第三篇:首先感慨一下这周跟随netcore官网学习是遇到的一些问题: a.官网的英文版教程使用的部分nuget包和我当时安装的最新包版本不一致,所以没法按照教材上给出的列 ...
随机推荐
- WPF中Canvas使用
首先知道Canvas有Left.Right.Top和Bottom这四个属性,放入Canvas的元素通过这四个属性来决定它们在Canvas里面的位置. 比如: Xaml: <Canvas Hori ...
- WPF知识点全攻略07- 数据绑定(Binding)
数据绑定是WPF不得不提,不得不会系列之一 数据绑定简言之,就是把数据源的数据绑定到目标对象的属性上.目标对象可以是承自DependencyProperty的任何可访问的属性或控件,目标属性必须为依赖 ...
- idea下使用码云插件进行git提交
1)下载插件 file->setting->plugins->右侧搜索gitee->安装->重启ide 2)配置版本控制 file->setting->Ver ...
- common-fileupload上传图片并显示图片
效果图如下: 代码: 注意:需要jar包:commons-fileupload-1.2.1.jar 和 commons-io-1. ...
- 歌乐第二弹:C++九九八十一
第一弹传送门:极乐净土 二话不说,上代码(注意事项在第一弹里): #include <windows.h> //q前缀为低音,g为高音,s前缀为半音阶 const int q1 = 131 ...
- ratio_to_report分析函数求占比
drop table test; create table test ( name varchar(20), kemu varchar(20), score number ); insert int ...
- baidumap demo(二)
接口说明 百度地图API提供的搜索服务包括:POI检索,多关键字检索,公交方案检索,驾车路线检索,步行路线检索,地理编码,反地理编码,公交详情检索,在线建议查询,短串分享. 所有检索请求接口均为异步接 ...
- ASIHTTPRequest简单学习
ASIHTTPRequest框架是优秀的第三方Objective-C的HTTP框架,支持Mac OS X和iOS下的HTTP开发. 一.ASIHTTPRequest框架的安装和配置 (1)首先要在项目 ...
- noip_最后一遍_3-数据结构
noip基础数据结构太多了又太捞了 所以也就那么几个了 单调队列滑动窗口 #include<bits/stdc++.h> using namespace std; #define maxn ...
- 【dp 贪心】bzoj4391: [Usaco2015 dec]High Card Low Card
巧妙的贪心 Description Bessie the cow is a huge fan of card games, which is quite surprising, given her l ...