1

systemtap 无法找到跟踪事件,即使它们都在目录中可用:/sys/kernel/debug/tracing/events。运行“perf record sched”会发现所有 sched 跟踪事件没有任何问题。

系统正在运行:Linux(无)3.2.0-48-virtual #74-Ubuntu SMP Thu Jun 6 20:02:55 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux

stap -l 'kernel.trace("*")

未找到活动

systemtap 可以毫无问题地找到内核函数。

stap -l 'kernel.function("*")'

.. kernel.function("AUDIT_MODE@/build/buildd/linux-3.2.0/security/apparmor/include/policy.h:311") kernel.function("BLEND_OP@/build/buildd/linux-3.2.0 /crypto/sha256_generic.c:48") kernel.function("BLOCK_NEXT@/build/buildd/linux-3.2.0/drivers/staging/zram/xvmalloc.c:82") ....

我在 openSUSE 上看到了一个错误报告:

错误 800335 - devel:tools/systemtap: 未声明对 libebl1 的依赖

但 libebl1 是已安装的 Elfutils 软件包的一部分。导致 systemtap 找不到跟踪事件可能会丢失什么。

谢谢,阿米尔。

4

0 回答 0