On Ubuntu and Debian, we can't find any symbol including "inet_pton" from 'nm -g' root@vm-lkp-nex04-8G-5 ~# nm -g /lib/x86_64-linux-gnu/libc-2.25.so | grep inet_pton nm: /lib/x86_64-linux-gnu/libc-2.25.so: no symbols
it looks libc.so has different symbol compositions at different distros Usage: nm [option(s)] [file(s)] List symbols in [file(s)] (a.out by default). The options are: ...snip... -D, --dynamic Display dynamic symbols instead of normal symbols --defined-only Display only defined symbols -e (ignored) -f, --format=FORMAT Use the output format FORMAT. FORMAT can be `bsd', `sysv' or `posix'. The default is `bsd' -g, --extern-only Display only external symbols I tested both debian/ubuntu and RHEL, they work as expected CC: Thomas Richter <tmri...@linux.vnet.ibm.com> CC: Arnaldo Carvalho de Melo <a...@redhat.com> Signed-off-by: Li Zhijian <lizhij...@cn.fujitsu.com> --- tools/perf/tests/shell/trace+probe_libc_inet_pton.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tools/perf/tests/shell/trace+probe_libc_inet_pton.sh b/tools/perf/tests/shell/trace+probe_libc_inet_pton.sh index 8b3da21..f939bd6 100755 --- a/tools/perf/tests/shell/trace+probe_libc_inet_pton.sh +++ b/tools/perf/tests/shell/trace+probe_libc_inet_pton.sh @@ -11,7 +11,7 @@ . $(dirname $0)/lib/probe.sh libc=$(grep -w libc /proc/self/maps | head -1 | sed -r 's/.*[[:space:]](\/.*)/\1/g') -nm -g $libc 2>/dev/null | fgrep -q inet_pton || exit 254 +nm -gD $libc 2>/dev/null | fgrep -q inet_pton || exit 254 trace_libc_inet_pton_backtrace() { idx=0 -- 2.7.4