如何在ftrace中使用跟踪标记?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在ftrace中使用跟踪标记?相关的知识,希望对你有一定的参考价值。
如何在ftrace
中使用跟踪标记来记录用户事件?我使用以下,但编译器无法定义WR_ONLY
:
static int trace_fd = -1;
void trace_write(const char *fmt, ...)
{
va_list ap;
char buf[256];
int n;
if (trace_fd < 0)
return;
va_start(ap, fmt);
n = vsnprintf(buf, 256, fmt, ap);
va_end(ap);
write(trace_fd, buf, n);
}
[...]
trace_fd = open("trace_marker", WR_ONLY);
然后,使用trace_write()
函数记录到ftrace
缓冲区。
trace_write("record this event
")
编译错误:
error: C++ requires a type specifier for all declarations
trace_fd = open("trace_marker", WR_ONLY);
答案
qazxsw poi中似乎有一个错误,你似乎从中复制了你的代码。试试qazxsw poi(qazxsw poi得到它的定义)而不是ftrace documentation。
请注意,您还需要O_WRONLY
的完整路径,#include <sys/fcntl.h>
或WR_ONLY
,具体取决于您的内核版本和trace_marker
的安装位置。
以上是关于如何在ftrace中使用跟踪标记?的主要内容,如果未能解决你的问题,请参考以下文章