openresty/openresty-systemtap-toolkit

self building systemtap have error, notice 'SSL_GetImplementedCiphers' domain undefined

sosojustdo opened this issue · 8 comments

hi @agentzh
myself building systemtap notice 'SSL_GetImplementedCiphers' domain undefined, error message detail for blow:

csclient.cxx: In member function ‘int compile_server_client::compile_using_server(std::vector<compile_server_info, std::allocator<compile_server_info> >&)’:
csclient.cxx:1308: 错误:‘SSL_GetImplementedCiphers’ 在此作用域中尚未声明
csclient.cxx: In function ‘void add_server_trust(systemtap_session&, const std::string&, std::vector<compile_server_info, std::allocator<compile_server_info> >&)’:
csclient.cxx:1760: 错误:‘SSL_GetImplementedCiphers’ 在此作用域中尚未声明
make[2]: *** [stap-csclient.o] 错误 1
make[2]: Leaving directory /usr/local/systemtap-2.9' make[1]: *** [all-recursive] 错误 1 make[1]: Leaving directory/usr/local/systemtap-2.9'
make: *** [all] 错误 2

note:
1: systemtap version for 2.9
2: elfutils version for 0.149
3: install refer:https://sourceware.org/git/?p=systemtap.git;a=blob_plain;f=README;hb=HEAD
4: systemtap source code, look https://github.com/sysperf/systemtap, and csclient.cxx for line 1308 ,stap-serverd.cxx for line 2409 source file, "SSL_GetImplementedCiphers" is function

@sosojustdo I'm confused. What tool in this nginx-systemtap-toolkit project are you using? If you're not using any of the tools in this repos, then you should post your questions to the systemtap mailing list instead.

this problem sloved,due to systemtap version and elfutils version uncompatible;
but executed ./ngx-sample-lua-bt -p 20477 --luajit20 -t 5 > /usr/local/tmp.bt,
stay in the command line, also tmp.bt file 0 size, why?

@sosojustdo Try making your process 20477 hotter in terms of CPU usage and/or increasing the sampling period in the -t option value.

cpu usage increase, but notice:WARNING: missing unwind/symbol data for module 'uprobes', why?

@sosojustdo This warning is harmless, usually.

@agentzh
uname -r print:3.10.0-229.14.1.el7.x86_64;
so that installed kernel-debuginfo-3.10.0-229.14.1.el7.x86_64 、kernel-debuginfo-common-3.10.0-229.14.1.el7.x86_64 、kernel-devel-3.10.0-229.14.1.el7.x86_64 tools,and yum install systemtap , systemtap final install version for :Systemtap translator/driver (version 2.6/0.163, non-git sources)

problem desc: executed command stap -v -e 'probe vfs.read {printf("read performed\n"); exit()}', print error: module version mismatch (#1 SMP Tue Sep 15 05:09:55 CDT 2015 vs #1 SMP Tue Sep 15 15:05:51 UTC 2015), release 3.10.0-229.14.1.el7.x86_64

@sosojustdo It looks like the kernel module version does not exactly match. Note the timestamps recorded are different (05:09:55 CDT vs 15:05:51 UTC). Try removing the systemtap cache directory:

rm -rf ~/.systemtap/cache/

try modifying "/lib/modules//build/include/config/cross/compile.h"