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包和我当时安装的最新包版本不一致,所以没法按照教材上给出的列 ...
随机推荐
- Vue相关问题
1. 说一下Vue的双向绑定数据的原理 vue 实现数据双向绑定主要是:采用数据劫持结合发布者-订阅者模式的方式,通过 Object.defineProperty() 来劫持各个属性的 setter, ...
- Python IDE推荐
八个最佳Python IDE 作者:chszs,转载需注明.博客主页:http://blog.csdn.net/chszs Python是一种功能强大.语言简洁的编程语言.本文向大家推荐8个适合pyt ...
- shell脚本,awk替换{}里面的内容
如何将oxo{axbxc}oxo{dxexf}oxo里面的{}里面的x 替换为; 用awk实现 [root@localhost 09-30]# echo 'oxo{axbxc}oxo{dxexf}ox ...
- java在线聊天项目0.6版 解决客户端关闭后异常问题 dis.readUTF()循环读取已关闭的socket
服务端对try catch finally重新进行了定义,当发生异常,主动提示,或关闭出现异常的socket 服务器端代码修改如下: package com.swift; import java.io ...
- bcdboot应用
1.下个win8 的pe,功能齐全的.2.CMD执行命令 bcdboot c:\windows /s x: /f all c代表c盘即win所在分区盘符.s,命令参数,引导另存到其他地方.x,某储存引 ...
- Leetcode 71 简化路径simplify-path(栈)
给定一个文档 (Unix-style) 的完全路径,请进行路径简化. 例如,path = "/home/", => "/home"path = " ...
- MySQL的索引知识
一.什么是索引. 索引是用来加速查询的技术的选择之一,在通常情况下,造成查询速度差异 的因素就是索引是否使用得当.当我们没有对数据表的某一字段段或者多个 字段添加索引时,实际上执行的全表扫描操作,效率 ...
- (4)zabbix监控第一台服务器
2. zabbix监控服务器 创建主机,选择模板以及录入基本信息,过一分钟左右,就可以看到cpu.内存.硬盘等等使用情况.本节以图文为主.by the way, zabbix中文翻译很烂,config ...
- linux中mysql自带同步
今天打算给一个做主备web服务器.考虑到数据库的同步,现在自己本地虚拟机做个实验. 经过慎重考虑(其实就是参考了下论坛大家的看法). 最后决定用mysql自带的同步设置. 话不多说 配置过程如下.
- 【php】 php 的注释和结束符号之间的关系
Closing PHP tags are recognised within single-line comments: <?php // Code will end here ?> ...