From: tip-bot for Thomas Richter <tipbot@zytor.com>
To: linux-tip-commits@vger.kernel.org
Cc: tglx@linutronix.de, brueckner@linux.vnet.ibm.com,
mingo@kernel.org, tmricht@linux.vnet.ibm.com,
linux-kernel@vger.kernel.org, acme@redhat.com, hpa@zytor.com
Subject: [tip:perf/core] perf test shell: Fix test case probe libc's inet_pton on s390x
Date: Sat, 18 Nov 2017 00:33:39 -0800 [thread overview]
Message-ID: <tip-0879e5e5f33c8a1eb01281ad920173664e68b266@git.kernel.org> (raw)
In-Reply-To: <20171114133409.GN8836@kernel.org>
Commit-ID: 0879e5e5f33c8a1eb01281ad920173664e68b266
Gitweb: https://git.kernel.org/tip/0879e5e5f33c8a1eb01281ad920173664e68b266
Author: Thomas Richter <tmricht@linux.vnet.ibm.com>
AuthorDate: Tue, 14 Nov 2017 08:18:47 +0100
Committer: Arnaldo Carvalho de Melo <acme@redhat.com>
CommitDate: Thu, 16 Nov 2017 14:50:00 -0300
perf test shell: Fix test case probe libc's inet_pton on s390x
The 'perf test' case "probe libc's inet_pton & backtrace it with ping"
fails on s390x. The reason is the 'realpath /lib64/ld*.so.* | uniq' line
which returns 2 libraries:
root@s35lp76 shell]# realpath /lib64/ld*.so.* | uniq
/usr/lib64/ld-2.26.so
/usr/lib64/ld_pre_smc.so.1.0.1
[root@s35lp76 shell]
This output makes the "perf probe" command lines invalid.
Use ldd tool to find out the libraries required by "bash" and check if
symbol "inet_pton" is part of the "libc" library. Some distros do not
have a /lib64 directory.
I have also added a check for the existence of an IPv6 network interface
before it is being used.
Committer changes:
We can't really use ldd for libc, as in some systems, such as x86_64, it
has hardlinks and then ldd sees one and the kernel the other, so grep
for libc in /proc/self/maps to get the one we'll receive from
PERF_RECORD_MMAP.
Thomas checked this change and acked it.
Signed-off-by: Thomas-Mich Richter <tmricht@linux.vnet.ibm.com>
Tested-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Suggested-by: Hendrik Brückner <brueckner@linux.vnet.ibm.com>
Reviewed-by: Hendrik Brückner <brueckner@linux.vnet.ibm.com>
Link: http://lkml.kernel.org/r/20171114133409.GN8836@kernel.org
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
---
tools/perf/tests/shell/trace+probe_libc_inet_pton.sh | 7 +++++--
1 file changed, 5 insertions(+), 2 deletions(-)
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 7a84d73..8b3da21 100755
--- a/tools/perf/tests/shell/trace+probe_libc_inet_pton.sh
+++ b/tools/perf/tests/shell/trace+probe_libc_inet_pton.sh
@@ -10,8 +10,8 @@
. $(dirname $0)/lib/probe.sh
-ld=$(realpath /lib64/ld*.so.* | uniq)
-libc=$(echo $ld | sed 's/ld/libc/g')
+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
trace_libc_inet_pton_backtrace() {
idx=0
@@ -37,6 +37,9 @@ trace_libc_inet_pton_backtrace() {
done
}
+# Check for IPv6 interface existence
+ip a sh lo | fgrep -q inet6 || exit 2
+
skip_if_no_perf_probe && \
perf probe -q $libc inet_pton && \
trace_libc_inet_pton_backtrace
next prev parent reply other threads:[~2017-11-18 8:34 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <20171114071847.2381-1-tmricht@linux.vnet.ibm.com>
[not found] ` <20171114071847.2381-2-tmricht@linux.vnet.ibm.com>
[not found] ` <20171114132625.GM8836@kernel.org>
2017-11-14 13:34 ` [PATCH] perf test: fix test case probe libc's inet_pton on s390x Arnaldo Carvalho de Melo
2017-11-14 13:47 ` Arnaldo Carvalho de Melo
2017-11-14 13:55 ` Thomas-Mich Richter
2017-11-14 14:58 ` Arnaldo Carvalho de Melo
2017-11-18 8:33 ` tip-bot for Thomas Richter [this message]
2017-11-29 6:31 ` [tip:perf/core] perf test shell: Fix " tip-bot for Thomas Richter
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=tip-0879e5e5f33c8a1eb01281ad920173664e68b266@git.kernel.org \
--to=tipbot@zytor.com \
--cc=acme@redhat.com \
--cc=brueckner@linux.vnet.ibm.com \
--cc=hpa@zytor.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-tip-commits@vger.kernel.org \
--cc=mingo@kernel.org \
--cc=tglx@linutronix.de \
--cc=tmricht@linux.vnet.ibm.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).