本文介绍了"__tracepoint_sched_process_fork未定义"运行systemstap脚本时的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

限时删除!!

错误信息:

WARNING: "__tracepoint_sched_process_fork" [/tmp/stapH5cHsd/stap_958d0ff0e571c9357f1e193511d8baa3_269311.ko] undefined!
WARNING: "__tracepoint_sys_exit" [/tmp/stapH5cHsd/stap_958d0ff0e571c9357f1e193511d8baa3_269311.ko] undefined!
WARNING: "__tracepoint_sys_enter" [/tmp/stapH5cHsd/stap_958d0ff0e571c9357f1e193511d8baa3_269311.ko] undefined!
WARNING: "__tracepoint_sched_process_exec" [/tmp/stapH5cHsd/stap_958d0ff0e571c9357f1e193511d8baa3_269311.ko] undefined!
WARNING: "__tracepoint_sched_process_exit" [/tmp/stapH5cHsd/stap_958d0ff0e571c9357f1e193511d8baa3_269311.ko] undefined!
ERROR: Couldn't insert module '/tmp/stapH5cHsd/stap_958d0ff0e571c9357f1e193511d8baa3_269311.ko': Unknown symbol in module
WARNING: /usr/bin/staprun exited with status: 1
Pass 5: run failed.  [man error::pass5]
Tip: /usr/share/doc/systemtap/README.Debian should help you get started.

我的环境:

# cat /proc/version
Linux version 3.16.0-70-generic (buildd@lgw01-01) (gcc version 4.8.2 (Ubuntu 4.8.2-19ubuntu1) ) #90~14.04.1-Ubuntu SMP Wed Apr 6 22:56:34 UTC 2016

# stap -V
Systemtap translator/driver (version 2.3/0.158, Debian version 2.3-1ubuntu1.4 (trusty))
Copyright (C) 2005-2013 Red Hat, Inc. and others
This is free software; see the source for copying conditions.
enabled features: AVAHI LIBSQLITE3 NSS TR1_UNORDERED_MAP NLS

# dpkg --list | grep `uname -r`

ii  linux-headers-3.16.0-70-generic                       3.16.0-70.90~14.04.1                                amd64        Linux kernel headers for version 3.16.0 on 64 bit x86 SMP
ii  linux-image-3.16.0-70-generic                         3.16.0-70.90~14.04.1                                amd64        Linux kernel image for version 3.16.0 on 64 bit x86 SMP
ii  linux-image-3.16.0-70-generic-dbgsym                  3.16.0-70.90~14.04.1                                amd64        Linux kernel debug image for version 3.16.0 on 64 bit x86 SMP
ii  linux-image-extra-3.16.0-70-generic                   3.16.0-70.90~14.04.1                                amd64        Linux kernel extra modules for version 3.16.0 on 64 bit x86 SMP
ii  linux-signed-image-3.16.0-70-generic                  3.16.0-70.90~14.04.1                                amd64        Signed kernel image generic


# sudo cat /proc/kallsyms | grep __tracepoint_sched_process_fork
ffffffff81cecbe0 D __tracepoint_sched_process_fork
解决方案

我在 systemtap的邮件列表,我很快就得到了答案.

这是因为跟踪点API在内核3.15中发生了变化,赶上了systemtap 2.5中的那些更改,也就是我需要新版本的systemtap.

下载 systemtap-2.6 并安装后,它可以正常工作而不会出现此错误. /p>

The error info :

WARNING: "__tracepoint_sched_process_fork" [/tmp/stapH5cHsd/stap_958d0ff0e571c9357f1e193511d8baa3_269311.ko] undefined!
WARNING: "__tracepoint_sys_exit" [/tmp/stapH5cHsd/stap_958d0ff0e571c9357f1e193511d8baa3_269311.ko] undefined!
WARNING: "__tracepoint_sys_enter" [/tmp/stapH5cHsd/stap_958d0ff0e571c9357f1e193511d8baa3_269311.ko] undefined!
WARNING: "__tracepoint_sched_process_exec" [/tmp/stapH5cHsd/stap_958d0ff0e571c9357f1e193511d8baa3_269311.ko] undefined!
WARNING: "__tracepoint_sched_process_exit" [/tmp/stapH5cHsd/stap_958d0ff0e571c9357f1e193511d8baa3_269311.ko] undefined!
ERROR: Couldn't insert module '/tmp/stapH5cHsd/stap_958d0ff0e571c9357f1e193511d8baa3_269311.ko': Unknown symbol in module
WARNING: /usr/bin/staprun exited with status: 1
Pass 5: run failed.  [man error::pass5]
Tip: /usr/share/doc/systemtap/README.Debian should help you get started.

My env:

# cat /proc/version
Linux version 3.16.0-70-generic (buildd@lgw01-01) (gcc version 4.8.2 (Ubuntu 4.8.2-19ubuntu1) ) #90~14.04.1-Ubuntu SMP Wed Apr 6 22:56:34 UTC 2016

# stap -V
Systemtap translator/driver (version 2.3/0.158, Debian version 2.3-1ubuntu1.4 (trusty))
Copyright (C) 2005-2013 Red Hat, Inc. and others
This is free software; see the source for copying conditions.
enabled features: AVAHI LIBSQLITE3 NSS TR1_UNORDERED_MAP NLS

# dpkg --list | grep `uname -r`

ii  linux-headers-3.16.0-70-generic                       3.16.0-70.90~14.04.1                                amd64        Linux kernel headers for version 3.16.0 on 64 bit x86 SMP
ii  linux-image-3.16.0-70-generic                         3.16.0-70.90~14.04.1                                amd64        Linux kernel image for version 3.16.0 on 64 bit x86 SMP
ii  linux-image-3.16.0-70-generic-dbgsym                  3.16.0-70.90~14.04.1                                amd64        Linux kernel debug image for version 3.16.0 on 64 bit x86 SMP
ii  linux-image-extra-3.16.0-70-generic                   3.16.0-70.90~14.04.1                                amd64        Linux kernel extra modules for version 3.16.0 on 64 bit x86 SMP
ii  linux-signed-image-3.16.0-70-generic                  3.16.0-70.90~14.04.1                                amd64        Signed kernel image generic


# sudo cat /proc/kallsyms | grep __tracepoint_sched_process_fork
ffffffff81cecbe0 D __tracepoint_sched_process_fork
解决方案

I ask this question on the maillist of systemtap, and quickly i get the answer.

It is because "The tracepoint API changed in kernel 3.15, and wecaught up to those changes in systemtap 2.5", aka i need a new version of systemtap.

After download systemtap-2.6 and install it, it works well without this error.

这篇关于"__tracepoint_sched_process_fork未定义"运行systemstap脚本时的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

1403页,肝出来的..

09-07 03:13