我正在使用trace_printk((打印一些数字(它们大约有一百万个数字(。但是当我检查/sys/kernel/debug/trace/trace时...仅打印全系列的一部分。
谁能建议我如何增加缓冲区大小或通过任何选项打印全范围的任何方法。
*注意:我不关心 ftrace 的其他输出。
*注意2:我是使用ftrace和内核函数的初学者。
基于 Ubuntu 18.04
-
buffer_size_kb文件存在于/sys/kernel/debug/tracing 目录中。
您可以通过回显进行更改。
$ eche echo 4096 > buffer_size_kb
buffer_size_kb * CPU 核心计数 = buffer_total_size_kb 会自动计算和存储。
这将增加 ftrace 文件中的数量。
-
覆盖文件存在于/sys/kernel/debug/tracecing/options 目录中。
覆盖文件也可以更改为回显。
$ eche echo 4096 > buffer_size_kb
默认值为 1,这将丢弃最早的事件(第一部分(。相反,如果为零,则丢弃最近的事件(背面(。
在这种情况下,ftrace 文件的数量不会增加,您可以看到第一个或最后一个。