* [PATCH 0/2] perf tools: Fix symbol and object code resolution for vdso32 and vdsox32
@ 2018-06-04 12:56 Adrian Hunter
2018-06-04 12:56 ` [PATCH 1/2] perf tests kmod-path: Add tests " Adrian Hunter
` (2 more replies)
0 siblings, 3 replies; 6+ messages in thread
From: Adrian Hunter @ 2018-06-04 12:56 UTC (permalink / raw)
To: Arnaldo Carvalho de Melo; +Cc: Jiri Olsa, Wang Nan, linux-kernel
Hi
Here are a couple of small fixes for tracing 32-bit binaries on a 64-bit
kernel.
Adrian Hunter (2):
perf tests kmod-path: Add tests for vdso32 and vdsox32
perf tools: Fix symbol and object code resolution for vdso32 and vdsox32
tools/perf/tests/kmod-path.c | 16 ++++++++++++++++
tools/perf/util/dso.c | 2 ++
2 files changed, 18 insertions(+)
Regards
Adrian
^ permalink raw reply [flat|nested] 6+ messages in thread
* [PATCH 1/2] perf tests kmod-path: Add tests for vdso32 and vdsox32
2018-06-04 12:56 [PATCH 0/2] perf tools: Fix symbol and object code resolution for vdso32 and vdsox32 Adrian Hunter
@ 2018-06-04 12:56 ` Adrian Hunter
2018-06-07 8:17 ` [tip:perf/urgent] " tip-bot for Adrian Hunter
2018-06-04 12:56 ` [PATCH 2/2] perf tools: Fix symbol and object code resolution " Adrian Hunter
2018-06-04 13:44 ` [PATCH 0/2] " Arnaldo Carvalho de Melo
2 siblings, 1 reply; 6+ messages in thread
From: Adrian Hunter @ 2018-06-04 12:56 UTC (permalink / raw)
To: Arnaldo Carvalho de Melo; +Cc: Jiri Olsa, Wang Nan, linux-kernel
Add tests for vdso32 and vdsox32. This will cause the overall test to fail
because __kmod_path__parse() does not handle vdso32 or vdsox32.
Fixes: 1f121b03d058 ("perf tools: Deal with kernel module names in '[]' correctly")
Signed-off-by: Adrian Hunter <adrian.hunter@intel.com>
---
tools/perf/tests/kmod-path.c | 16 ++++++++++++++++
1 file changed, 16 insertions(+)
diff --git a/tools/perf/tests/kmod-path.c b/tools/perf/tests/kmod-path.c
index 8e57d46109de..148dd31cc201 100644
--- a/tools/perf/tests/kmod-path.c
+++ b/tools/perf/tests/kmod-path.c
@@ -127,6 +127,22 @@ int test__kmod_path__parse(struct test *t __maybe_unused, int subtest __maybe_un
M("[vdso]", PERF_RECORD_MISC_KERNEL, false);
M("[vdso]", PERF_RECORD_MISC_USER, false);
+ T("[vdso32]", true , true , false, false, "[vdso32]", NULL);
+ T("[vdso32]", false , true , false, false, NULL , NULL);
+ T("[vdso32]", true , false , false, false, "[vdso32]", NULL);
+ T("[vdso32]", false , false , false, false, NULL , NULL);
+ M("[vdso32]", PERF_RECORD_MISC_CPUMODE_UNKNOWN, false);
+ M("[vdso32]", PERF_RECORD_MISC_KERNEL, false);
+ M("[vdso32]", PERF_RECORD_MISC_USER, false);
+
+ T("[vdsox32]", true , true , false, false, "[vdsox32]", NULL);
+ T("[vdsox32]", false , true , false, false, NULL , NULL);
+ T("[vdsox32]", true , false , false, false, "[vdsox32]", NULL);
+ T("[vdsox32]", false , false , false, false, NULL , NULL);
+ M("[vdsox32]", PERF_RECORD_MISC_CPUMODE_UNKNOWN, false);
+ M("[vdsox32]", PERF_RECORD_MISC_KERNEL, false);
+ M("[vdsox32]", PERF_RECORD_MISC_USER, false);
+
/* path alloc_name alloc_ext kmod comp name ext */
T("[vsyscall]", true , true , false, false, "[vsyscall]", NULL);
T("[vsyscall]", false , true , false, false, NULL , NULL);
--
1.9.1
^ permalink raw reply related [flat|nested] 6+ messages in thread
* [PATCH 2/2] perf tools: Fix symbol and object code resolution for vdso32 and vdsox32
2018-06-04 12:56 [PATCH 0/2] perf tools: Fix symbol and object code resolution for vdso32 and vdsox32 Adrian Hunter
2018-06-04 12:56 ` [PATCH 1/2] perf tests kmod-path: Add tests " Adrian Hunter
@ 2018-06-04 12:56 ` Adrian Hunter
2018-06-07 8:18 ` [tip:perf/urgent] " tip-bot for Adrian Hunter
2018-06-04 13:44 ` [PATCH 0/2] " Arnaldo Carvalho de Melo
2 siblings, 1 reply; 6+ messages in thread
From: Adrian Hunter @ 2018-06-04 12:56 UTC (permalink / raw)
To: Arnaldo Carvalho de Melo; +Cc: Jiri Olsa, Wang Nan, linux-kernel
Fix __kmod_path__parse() so that perf tools does not treat vdso32 and
vdsox32 as kernel modules and fail to find the object.
Fixes: 1f121b03d058 ("perf tools: Deal with kernel module names in '[]' correctly")
Cc: stable@vger.kernel.org
Signed-off-by: Adrian Hunter <adrian.hunter@intel.com>
---
tools/perf/util/dso.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/tools/perf/util/dso.c b/tools/perf/util/dso.c
index cdfc2e5f55f5..51cf82cf1882 100644
--- a/tools/perf/util/dso.c
+++ b/tools/perf/util/dso.c
@@ -354,6 +354,8 @@ int __kmod_path__parse(struct kmod_path *m, const char *path,
if ((strncmp(name, "[kernel.kallsyms]", 17) == 0) ||
(strncmp(name, "[guest.kernel.kallsyms", 22) == 0) ||
(strncmp(name, "[vdso]", 6) == 0) ||
+ (strncmp(name, "[vdso32]", 8) == 0) ||
+ (strncmp(name, "[vdsox32]", 9) == 0) ||
(strncmp(name, "[vsyscall]", 10) == 0)) {
m->kmod = false;
--
1.9.1
^ permalink raw reply related [flat|nested] 6+ messages in thread
* Re: [PATCH 0/2] perf tools: Fix symbol and object code resolution for vdso32 and vdsox32
2018-06-04 12:56 [PATCH 0/2] perf tools: Fix symbol and object code resolution for vdso32 and vdsox32 Adrian Hunter
2018-06-04 12:56 ` [PATCH 1/2] perf tests kmod-path: Add tests " Adrian Hunter
2018-06-04 12:56 ` [PATCH 2/2] perf tools: Fix symbol and object code resolution " Adrian Hunter
@ 2018-06-04 13:44 ` Arnaldo Carvalho de Melo
2 siblings, 0 replies; 6+ messages in thread
From: Arnaldo Carvalho de Melo @ 2018-06-04 13:44 UTC (permalink / raw)
To: Adrian Hunter; +Cc: Jiri Olsa, Wang Nan, linux-kernel
Em Mon, Jun 04, 2018 at 03:56:52PM +0300, Adrian Hunter escreveu:
> Hi
>
> Here are a couple of small fixes for tracing 32-bit binaries on a 64-bit
> kernel.
Thanks, applied both to both perf/urgent and perf/core.
- Arnaldo
>
> Adrian Hunter (2):
> perf tests kmod-path: Add tests for vdso32 and vdsox32
> perf tools: Fix symbol and object code resolution for vdso32 and vdsox32
>
> tools/perf/tests/kmod-path.c | 16 ++++++++++++++++
> tools/perf/util/dso.c | 2 ++
> 2 files changed, 18 insertions(+)
>
>
> Regards
> Adrian
^ permalink raw reply [flat|nested] 6+ messages in thread
* [tip:perf/urgent] perf tests kmod-path: Add tests for vdso32 and vdsox32
2018-06-04 12:56 ` [PATCH 1/2] perf tests kmod-path: Add tests " Adrian Hunter
@ 2018-06-07 8:17 ` tip-bot for Adrian Hunter
0 siblings, 0 replies; 6+ messages in thread
From: tip-bot for Adrian Hunter @ 2018-06-07 8:17 UTC (permalink / raw)
To: linux-tip-commits
Cc: linux-kernel, wangnan0, mingo, tglx, acme, hpa, adrian.hunter, jolsa
Commit-ID: dcaeae4e2c266452e04dc3d83b10469be9fe419e
Gitweb: https://git.kernel.org/tip/dcaeae4e2c266452e04dc3d83b10469be9fe419e
Author: Adrian Hunter <adrian.hunter@intel.com>
AuthorDate: Mon, 4 Jun 2018 15:56:53 +0300
Committer: Arnaldo Carvalho de Melo <acme@redhat.com>
CommitDate: Wed, 6 Jun 2018 12:52:03 -0300
perf tests kmod-path: Add tests for vdso32 and vdsox32
Add tests for vdso32 and vdsox32. This will cause the overall test to
fail because __kmod_path__parse() does not handle vdso32 or vdsox32.
Fixes: 1f121b03d058 ("perf tools: Deal with kernel module names in '[]' correctly")
Signed-off-by: Adrian Hunter <adrian.hunter@intel.com>
Cc: Jiri Olsa <jolsa@redhat.com>
Cc: Wang Nan <wangnan0@huawei.com>
Link: http://lkml.kernel.org/r/1528117014-30032-2-git-send-email-adrian.hunter@intel.com
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
---
tools/perf/tests/kmod-path.c | 16 ++++++++++++++++
1 file changed, 16 insertions(+)
diff --git a/tools/perf/tests/kmod-path.c b/tools/perf/tests/kmod-path.c
index 8e57d46109de..148dd31cc201 100644
--- a/tools/perf/tests/kmod-path.c
+++ b/tools/perf/tests/kmod-path.c
@@ -127,6 +127,22 @@ int test__kmod_path__parse(struct test *t __maybe_unused, int subtest __maybe_un
M("[vdso]", PERF_RECORD_MISC_KERNEL, false);
M("[vdso]", PERF_RECORD_MISC_USER, false);
+ T("[vdso32]", true , true , false, false, "[vdso32]", NULL);
+ T("[vdso32]", false , true , false, false, NULL , NULL);
+ T("[vdso32]", true , false , false, false, "[vdso32]", NULL);
+ T("[vdso32]", false , false , false, false, NULL , NULL);
+ M("[vdso32]", PERF_RECORD_MISC_CPUMODE_UNKNOWN, false);
+ M("[vdso32]", PERF_RECORD_MISC_KERNEL, false);
+ M("[vdso32]", PERF_RECORD_MISC_USER, false);
+
+ T("[vdsox32]", true , true , false, false, "[vdsox32]", NULL);
+ T("[vdsox32]", false , true , false, false, NULL , NULL);
+ T("[vdsox32]", true , false , false, false, "[vdsox32]", NULL);
+ T("[vdsox32]", false , false , false, false, NULL , NULL);
+ M("[vdsox32]", PERF_RECORD_MISC_CPUMODE_UNKNOWN, false);
+ M("[vdsox32]", PERF_RECORD_MISC_KERNEL, false);
+ M("[vdsox32]", PERF_RECORD_MISC_USER, false);
+
/* path alloc_name alloc_ext kmod comp name ext */
T("[vsyscall]", true , true , false, false, "[vsyscall]", NULL);
T("[vsyscall]", false , true , false, false, NULL , NULL);
^ permalink raw reply related [flat|nested] 6+ messages in thread
* [tip:perf/urgent] perf tools: Fix symbol and object code resolution for vdso32 and vdsox32
2018-06-04 12:56 ` [PATCH 2/2] perf tools: Fix symbol and object code resolution " Adrian Hunter
@ 2018-06-07 8:18 ` tip-bot for Adrian Hunter
0 siblings, 0 replies; 6+ messages in thread
From: tip-bot for Adrian Hunter @ 2018-06-07 8:18 UTC (permalink / raw)
To: linux-tip-commits
Cc: acme, linux-kernel, hpa, adrian.hunter, tglx, jolsa, mingo, wangnan0
Commit-ID: aef4feace285f27c8ed35830a5d575bec7f3e90a
Gitweb: https://git.kernel.org/tip/aef4feace285f27c8ed35830a5d575bec7f3e90a
Author: Adrian Hunter <adrian.hunter@intel.com>
AuthorDate: Mon, 4 Jun 2018 15:56:54 +0300
Committer: Arnaldo Carvalho de Melo <acme@redhat.com>
CommitDate: Wed, 6 Jun 2018 12:52:04 -0300
perf tools: Fix symbol and object code resolution for vdso32 and vdsox32
Fix __kmod_path__parse() so that perf tools does not treat vdso32 and
vdsox32 as kernel modules and fail to find the object.
Signed-off-by: Adrian Hunter <adrian.hunter@intel.com>
Cc: Jiri Olsa <jolsa@redhat.com>
Cc: Wang Nan <wangnan0@huawei.com>
Cc: stable@vger.kernel.org
Fixes: 1f121b03d058 ("perf tools: Deal with kernel module names in '[]' correctly")
Link: http://lkml.kernel.org/r/1528117014-30032-3-git-send-email-adrian.hunter@intel.com
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
---
tools/perf/util/dso.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/tools/perf/util/dso.c b/tools/perf/util/dso.c
index cdfc2e5f55f5..51cf82cf1882 100644
--- a/tools/perf/util/dso.c
+++ b/tools/perf/util/dso.c
@@ -354,6 +354,8 @@ int __kmod_path__parse(struct kmod_path *m, const char *path,
if ((strncmp(name, "[kernel.kallsyms]", 17) == 0) ||
(strncmp(name, "[guest.kernel.kallsyms", 22) == 0) ||
(strncmp(name, "[vdso]", 6) == 0) ||
+ (strncmp(name, "[vdso32]", 8) == 0) ||
+ (strncmp(name, "[vdsox32]", 9) == 0) ||
(strncmp(name, "[vsyscall]", 10) == 0)) {
m->kmod = false;
^ permalink raw reply related [flat|nested] 6+ messages in thread
end of thread, other threads:[~2018-06-07 8:18 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-06-04 12:56 [PATCH 0/2] perf tools: Fix symbol and object code resolution for vdso32 and vdsox32 Adrian Hunter
2018-06-04 12:56 ` [PATCH 1/2] perf tests kmod-path: Add tests " Adrian Hunter
2018-06-07 8:17 ` [tip:perf/urgent] " tip-bot for Adrian Hunter
2018-06-04 12:56 ` [PATCH 2/2] perf tools: Fix symbol and object code resolution " Adrian Hunter
2018-06-07 8:18 ` [tip:perf/urgent] " tip-bot for Adrian Hunter
2018-06-04 13:44 ` [PATCH 0/2] " Arnaldo Carvalho de Melo
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).