问题标签 [ftrace]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
206 浏览

kernel - perf ftrace falis 开始

尝试启动时perf ftrace出现以下错误

但是,我的内核配置了启用 ftrace 并且trace-cmdftrace 前端也可以正常工作。


出于某种原因,我得到了函数中的perf/builtin-ftrace.c文件write_tracing_file

我得到val== 一个空字符串,因此size== 0

然后在下一节

我得到了size = 0,这不好。所以 CPU 掩码部分出了点问题,但我不知道是什么。


编辑:看起来它在多核系统上的工作没有问题,但在单核系统中却没有。奇怪的...

0 投票
0 回答
125 浏览

android - 我的设备上缺少可用的 ftrace 跟踪器类型

我正在为一些研究开发用户级跟踪器包装器,我需要专门研究内核中的上下文切换。从这篇LWN 文章(“sched_switch”下大约三分之一的部分)开始,我注意到我的系统(运行 3.10.9 内核的 Android 设备)输出与文章(为 2.6 内核编写)之间存在一些差异. 我最大的问题是缺少下一个任务状态。为了准确显示,文章的输出格式为

(关注最后的 R 表示下一个状态的状态)我的输出:

现在互联网上的资源都有点杂乱无章,所以我希望能快速澄清一下。

在文章中,跟踪由

现在在我的系统上,我没有这个作为可用的跟踪器

odroidxu3:/d/tracing # cat available_tracers
function_graph wakeup_rt 唤醒函数 nop

但我可以通过以下接口跟踪 sched_switch 事件

$cat 可用事件 | grep sched_switch
sched:sched_switch

$ls 事件/sched/ | grep 开关
sched_switch

这让我问,我的内核是否缺少一些需要修补的功能(类似于这篇文章)或者 ftrace 接口是否将 sched_switch 从可用跟踪器移动到 ftrace 事件?

如果确实需要打补丁,在哪里可以找到已编译的列表/正在进行的 ftrace 补丁列表?

干杯

0 投票
1 回答
237 浏览

debugging - 将系统调用事件跟踪输出的格式更改为 ftrace

sys_enter_openat我为系统调用启用了 ftrace 事件跟踪。给出的相应输出格式events/syscalls/sys_enter_openat/format

正如预期的那样,ftrace 的示例输出行类似于

有没有办法改变输出格式,filename: 5af693f224以便显示为filename: <string>而不是地址?我想这本来可以使用systemtaporkrpobe但我的设置现在不允许使用它。

0 投票
1 回答
290 浏览

android - Modifying Android systrace for capturing CPU Frequency even where is no change

I am currently running systrace with the category "freq" to capture cpu frequency with my device and I noticed that it only outputs something during a change in the freq. So if there was no change during the capture, the html output that systrace spits out will be blank. I would like to modify the atrace function and show cpu frequency even if there is no change. I was thinking of reading cpu/cpu*/cpufreq/cpuinfo_cur_freq in adb shell and simulating a change to say it changed from 0 to the current so it could at least output something. Does anyone have any ideas? Thanks.

0 投票
0 回答
53 浏览

android - 为什么在tracing_on文件系统中不能写1

我尝试在 android 内核中使用动态 ftrace(用于 nexous 6 的 shamu)。

根据source.android.com启用配置和重建内核时。

我写不下去1tracing_on

我该如何启用它?

0 投票
1 回答
141 浏览

c - 在简单程序上使用 ftrace,内联汇编 __asm__("leave") 导致段错误

我正在阅读这本关于学习 Linux 二进制分析的书。在书中作者介绍了他在他的 github 上的 ftrace,并演示了如何使用它。他提供了一小段代码来测试 ftrace。

在其上运行 ftrace 时,没有任何反应。如果我自己运行可执行文件,我只会遇到段错误。我正在编译它: gcc -nostdlib test.c -o test

这是我的代码:

预期结果展示了 ftrace 通过执行跟踪函数调用。

这是我要表达的文字中的图像:

简单的 ftrace

这是我正在使用的 ftrace:

https://github.com/elfmaster/ftrace

我想问题是,我是否完全遗漏了某些东西,做错了什么,文本是否过时或者正确的方法是什么?如果这是一个愚蠢的问题,我很抱歉,我只是离开了文字。我还在虚拟机上使用 32 位发行版进行了尝试,但没有任何改变,但只是尝试了一下,因为作者的一些示例是在 32 位上的。谢谢你。

注意:当我使用不会导致段错误的程序运行他的 ftrace 时,我得到

0 投票
1 回答
390 浏览

c - 如何在 ftrace 中打印 trace_printk 的完整跟踪文件?

我正在使用 trace_printk() 打印一些数字(它们大约是一百万个数字)。但是,当我检查 /sys/kernel/debug/tracing/trace ... 时,只打印了整个范围的一部分。

谁能建议我如何增加缓冲区大小或以任何方式通过任何选项打印整个范围。

*注意:我不关心 ftrace 的其他输出。

*注2:我是使用ftrace和内核函数的初学者。

0 投票
1 回答
168 浏览

linux - 当tracing_threshold 不为零时,function_graph 插件无法记录 function_entry 记录

当tracing_thresh 设置为非零值时,function_graph 插件无法记录function_entry 记录,我使用的是带有4.15 内核的ubuntu。看起来,我偶然发现了https://lore.kernel.org/patchwork/patch/188477/上讨论的错误。请指教,重现步骤

0 投票
1 回答
168 浏览

linux - 如何在 ftrace/trace-cmd 中获取“}”之后的函数名

我最近开始使用 ftrace。我能够使用函数图跟踪

使用上述命令,我可以看到函数在“}”之前完成所花费的时间,但我想编写脚本来列出花费超过 10 毫秒的函数。

谁能帮我实现这一目标?

0 投票
2 回答
658 浏览

linux - Ftrace“功能”启用失败,资源繁忙

我正在尝试在 ftrace 中启用“功能”跟踪器

以下是命令。

当我在 ftrace 中尝试函数跟踪器时,我是否错过了一些东西,因为我得到“设备或资源繁忙”。

任何帮助将不胜感激。