• 2024-04-03linux tracepoint增加
    引入tracepoint的背景当需要获取内核的debug信息时,通常你会通过以下printk的方式打印信息:voidtrace_func(){//……printk("输出信息");//……}缺点:内核中printk是统一控制的,各个模块的printk都会被打印,无法只打印需要关注的模块如果需要修改/新增打印信
  • 2024-03-14Using the TRACE_EVENT() macro (Part 1)
    如果你对tracepoint后面的机制感兴趣,可以阅读关于TRACE_EVENT的三篇文章。这一系列文章对tracepoint后面的机制进行了详细讲解,以及其使用方法都有涉及。该系列文章出现在lwn.net上。注意,不要被英文吓住了,我保证,你认真读完这系列文章后,tracepoint后面的秘密不在是秘密。Using
  • 2024-02-07如何利用内核跟踪点排查短时进程问题?
    在排查系统CPU使用率高的问题时,很可能遇到过这样的困惑:明明通过 top 命令发现系统的CPU使用率(特别是用户CPU使用率)特别高,但通过 ps、pidstat 等工具都找不出CPU使用率高的进程。这是什么原因导致的呢?一般情况下,这类问题很可能是以下两个原因导致的:第一,应用程序里面
  • 2023-12-15Linux tracepoint使用和理解
    参考:如何使用TRACE_EVENT()宏来创建跟踪点1.如何查看tracepoint/sys/kernel/debug/tracing/events/通过perflisttracepoint查看2.tracepoint理解因此tracepoint方式如下:#undefTRACE_SYSTEM#defineTRACE_SYSTEMxhr_test#if!defined(_TRACE_TE_TEST_H)||def