Re: [PATCH] perf tools arm64: Add libdw DWARF post unwind support for ARM64

2018-03-13 Thread Martin Vuille



On 03/09/18 13:24, Arnaldo Carvalho de Melo wrote:



- "perf unwind: Report error from dwfl_attach_state"
   https://patchwork.kernel.org/patch/10211483/
   [Martin, I guess it would help if you replied-all that patch and
added your signed-off-by.]

Right, the S-o-B is needed


S-o-B has been provided by reply to this email. If you prefer, I can
resubmit the patch with the S-o-B included.

  

- "perf unwind: Unwind with libdw doesn't take symfs into account"
   https://patchwork.kernel.org/patch/10211599/

This one has the S-o-B, applying, Jiri, holler if you disagree,

- Arnaldo
  


Thanks.

Regards,
MV


Re: [PATCH] perf tools arm64: Add libdw DWARF post unwind support for ARM64

2018-03-13 Thread Martin Vuille



On 03/09/18 13:24, Arnaldo Carvalho de Melo wrote:



- "perf unwind: Report error from dwfl_attach_state"
   https://patchwork.kernel.org/patch/10211483/
   [Martin, I guess it would help if you replied-all that patch and
added your signed-off-by.]

Right, the S-o-B is needed


S-o-B has been provided by reply to this email. If you prefer, I can
resubmit the patch with the S-o-B included.

  

- "perf unwind: Unwind with libdw doesn't take symfs into account"
   https://patchwork.kernel.org/patch/10211599/

This one has the S-o-B, applying, Jiri, holler if you disagree,

- Arnaldo
  


Thanks.

Regards,
MV


Re: [PATCH] perf tools arm64: Add libdw DWARF post unwind support for ARM64

2018-03-09 Thread Martin Vuille

Thanks.

I replied to your message with additional information.

I will update the commit message and resubmit the patch.

MV


On 03/09/18 14:29, Arnaldo Carvalho de Melo wrote:

Em Fri, Mar 09, 2018 at 01:49:50PM -0500, Martin Vuille escreveu:

Hi,

I made two other submissions that may also have been overlooked:

https://patchwork.kernel.org/patch/10211401/ -- This one has the S-o-B

Ok, replied to that one, I can't see where is it that the symfs is being
first appended, please clarify that in the patch commit log message.
  




Re: [PATCH] perf tools arm64: Add libdw DWARF post unwind support for ARM64

2018-03-09 Thread Martin Vuille

Thanks.

I replied to your message with additional information.

I will update the commit message and resubmit the patch.

MV


On 03/09/18 14:29, Arnaldo Carvalho de Melo wrote:

Em Fri, Mar 09, 2018 at 01:49:50PM -0500, Martin Vuille escreveu:

Hi,

I made two other submissions that may also have been overlooked:

https://patchwork.kernel.org/patch/10211401/ -- This one has the S-o-B

Ok, replied to that one, I can't see where is it that the symfs is being
first appended, please clarify that in the patch commit log message.
  




Re: [PATCH] perf tools arm64: Add libdw DWARF post unwind support for ARM64

2018-03-09 Thread Arnaldo Carvalho de Melo
Em Fri, Mar 09, 2018 at 01:49:50PM -0500, Martin Vuille escreveu:
> Hi,
> 
> I made two other submissions that may also have been overlooked:
> 
> https://patchwork.kernel.org/patch/10211401/ -- This one has the S-o-B

Ok, replied to that one, I can't see where is it that the symfs is being
first appended, please clarify that in the patch commit log message.
 
> https://patchwork.kernel.org/patch/10211473/ -- RFC, was looking for 
> comments, has the S-o-B

[RFC,1/1] perf annotate: Don't prepend symfs path to vmlinux path

So, lemme try to provide the precise steps to reproduce this problem:

[root@jouet ~]# perf record -F 1 sleep 1
[ perf record: Woken up 1 times to write data ]
[ perf record: Captured and wrote 0.017 MB perf.data (11 samples) ]
[root@jouet ~]# perf buildid-list
44d954246227536955cb1ecbe9ef2a05665876b6 /lib/modules/4.16.0-rc4/build/vmlinux
87ae276466bc68e958c9817f11d5e09f14510585 [vdso]
3113881229974f02113945e92c1a4d4f146e061c /usr/lib64/libc-2.26.so
[root@jouet ~]#

then we go on and remove that buildid from the cache:

[root@jouet ~]# perf record -F 1 sleep 1
[ perf record: Woken up 1 times to write data ]
[ perf record: Captured and wrote 0.017 MB perf.data (10 samples) ]
[root@jouet ~]# perf report --dso \[kernel.vmlinux\] | grep -v ^# | head -5
38.00%  sleep[k] filemap_map_pages
19.68%  sleep[k] elf_map
 2.69%  perf [k] perf_iterate_ctx
 0.29%  perf [k] end_repeat_nmi
 0.04%  perf [k] native_sched_clock
[root@jouet ~]#
[root@jouet ~]# perf buildid-list
44d954246227536955cb1ecbe9ef2a05665876b6 /lib/modules/4.16.0-rc4/build/vmlinux
87ae276466bc68e958c9817f11d5e09f14510585 [vdso]
3113881229974f02113945e92c1a4d4f146e061c /usr/lib64/libc-2.26.so
[root@jouet ~]# ls -la 
~/.debug/.build-id/44/d954246227536955cb1ecbe9ef2a05665876b6
lrwxrwxrwx. 1 root root 77 Mar  9 16:14 
/root/.debug/.build-id/44/d954246227536955cb1ecbe9ef2a05665876b6 -> 
../../home/build/v4.16.0-rc4/vmlinux/44d954246227536955cb1ecbe9ef2a05665876b6
[root@jouet ~]# ls -la 
~/.debug/home/build/v4.16.0-rc4/vmlinux/44d954246227536955cb1ecbe9ef2a05665876b6/
total 510840
drwxr-xr-x. 2 root root  4096 Mar  9 16:14 .
drwxr-xr-x. 3 root root  4096 Mar  6 11:35 ..
-rwxr-xr-x. 1 root root 523085744 Mar  6 11:35 elf
-rw-r--r--. 1 root root 0 Mar  9 16:14 probes
[root@jouet ~]# perf buildid-cache --remove 
/lib/modules/4.16.0-rc4/build/vmlinux
[root@jouet ~]# ls -la 
~/.debug/.build-id/44/d954246227536955cb1ecbe9ef2a05665876b6
ls: cannot access 
'/root/.debug/.build-id/44/d954246227536955cb1ecbe9ef2a05665876b6': No such 
file or directory
[root@jouet ~]# ls -la 
~/.debug/home/build/v4.16.0-rc4/vmlinux/44d954246227536955cb1ecbe9ef2a05665876b6/
ls: cannot access 
'/root/.debug/home/build/v4.16.0-rc4/vmlinux/44d954246227536955cb1ecbe9ef2a05665876b6/':
 No such file or directory
[root@jouet ~]#

Ok, so now I do:

[root@jouet ~]# perf annotate --stdio --vmlinux 
/lib/modules/4.16.0-rc4/build/vmlinux filemap_map_pages
Failed to open [kernel.kallsyms]_text, continuing without symbols
Error:
The perf.data file has no samples!
[root@jouet ~]# 


But I ran out of time today, this one needs a bit more investigation, I
couldn't get to that dso__disassemble_filename() in the above case :-\
 
> For https://patchwork.kernel.org/patch/10211483/, I'm not sure how to go 
> about doing a reply to all.

So, no need for that, just state here that you provide your Signed-off-by: to
it and I'll add it, which is what I'm doing now since this seems to be your
intent, right?

I'll just add another Link: tag pointing to your reply to -this- message,
if it comes with a S-o-B for https://patchwork.kernel.org/patch/10211483/, ok?

- Arnaldo
 
> I had some email problems and was cut-off from the list for a while.
> 
> MV
> 
> 
> On 03/09/18 13:24, Arnaldo Carvalho de Melo wrote:
> > Em Fri, Mar 09, 2018 at 12:07:20PM -0600, Kim Phillips escreveu:
> > > On Fri, 9 Mar 2018 12:06:27 -0300
> > > Arnaldo Carvalho de Melo  wrote:
> > > 
> > > Hi Arnaldo,
> > > 
> > > > Em Thu, Mar 08, 2018 at 09:10:30PM -0600, Kim Phillips escreveu:
> > > > > Based on prior work:
> > > > > 
> > > > > https://lkml.org/lkml/2014/5/6/395
> > > > Thanks, looks good, applying.
> > > > 
> > > > Jean, is everything ok with you on this?
> > > By now your email to Jean should have bounced with "The email account
> > > that you tried to reach does not exist."  Removing Jean from Cc.
> > > 
> > > It seems like you're applying patches.  There are a couple that have
> > > slipped through the cracks: Can you please take a look at applying them?
> > > 
> > > - "perf tools: Fixing uninitialised variable"
> > >https://patchwork.kernel.org/patch/10179381/
> > [acme@jouet perf]$ git tag --contains 
> > d2785de15f1bd42d613d56bbac5a007e7293b874
> > perf-core-for-mingo-4.17-20180216
> > 
> > commit d2785de15f1bd42d613d56bbac5a007e7293b874
> > Author: Mathieu Poirier 
> > AuthorDate: Mon Feb 12 

Re: [PATCH] perf tools arm64: Add libdw DWARF post unwind support for ARM64

2018-03-09 Thread Arnaldo Carvalho de Melo
Em Fri, Mar 09, 2018 at 01:49:50PM -0500, Martin Vuille escreveu:
> Hi,
> 
> I made two other submissions that may also have been overlooked:
> 
> https://patchwork.kernel.org/patch/10211401/ -- This one has the S-o-B

Ok, replied to that one, I can't see where is it that the symfs is being
first appended, please clarify that in the patch commit log message.
 
> https://patchwork.kernel.org/patch/10211473/ -- RFC, was looking for 
> comments, has the S-o-B

[RFC,1/1] perf annotate: Don't prepend symfs path to vmlinux path

So, lemme try to provide the precise steps to reproduce this problem:

[root@jouet ~]# perf record -F 1 sleep 1
[ perf record: Woken up 1 times to write data ]
[ perf record: Captured and wrote 0.017 MB perf.data (11 samples) ]
[root@jouet ~]# perf buildid-list
44d954246227536955cb1ecbe9ef2a05665876b6 /lib/modules/4.16.0-rc4/build/vmlinux
87ae276466bc68e958c9817f11d5e09f14510585 [vdso]
3113881229974f02113945e92c1a4d4f146e061c /usr/lib64/libc-2.26.so
[root@jouet ~]#

then we go on and remove that buildid from the cache:

[root@jouet ~]# perf record -F 1 sleep 1
[ perf record: Woken up 1 times to write data ]
[ perf record: Captured and wrote 0.017 MB perf.data (10 samples) ]
[root@jouet ~]# perf report --dso \[kernel.vmlinux\] | grep -v ^# | head -5
38.00%  sleep[k] filemap_map_pages
19.68%  sleep[k] elf_map
 2.69%  perf [k] perf_iterate_ctx
 0.29%  perf [k] end_repeat_nmi
 0.04%  perf [k] native_sched_clock
[root@jouet ~]#
[root@jouet ~]# perf buildid-list
44d954246227536955cb1ecbe9ef2a05665876b6 /lib/modules/4.16.0-rc4/build/vmlinux
87ae276466bc68e958c9817f11d5e09f14510585 [vdso]
3113881229974f02113945e92c1a4d4f146e061c /usr/lib64/libc-2.26.so
[root@jouet ~]# ls -la 
~/.debug/.build-id/44/d954246227536955cb1ecbe9ef2a05665876b6
lrwxrwxrwx. 1 root root 77 Mar  9 16:14 
/root/.debug/.build-id/44/d954246227536955cb1ecbe9ef2a05665876b6 -> 
../../home/build/v4.16.0-rc4/vmlinux/44d954246227536955cb1ecbe9ef2a05665876b6
[root@jouet ~]# ls -la 
~/.debug/home/build/v4.16.0-rc4/vmlinux/44d954246227536955cb1ecbe9ef2a05665876b6/
total 510840
drwxr-xr-x. 2 root root  4096 Mar  9 16:14 .
drwxr-xr-x. 3 root root  4096 Mar  6 11:35 ..
-rwxr-xr-x. 1 root root 523085744 Mar  6 11:35 elf
-rw-r--r--. 1 root root 0 Mar  9 16:14 probes
[root@jouet ~]# perf buildid-cache --remove 
/lib/modules/4.16.0-rc4/build/vmlinux
[root@jouet ~]# ls -la 
~/.debug/.build-id/44/d954246227536955cb1ecbe9ef2a05665876b6
ls: cannot access 
'/root/.debug/.build-id/44/d954246227536955cb1ecbe9ef2a05665876b6': No such 
file or directory
[root@jouet ~]# ls -la 
~/.debug/home/build/v4.16.0-rc4/vmlinux/44d954246227536955cb1ecbe9ef2a05665876b6/
ls: cannot access 
'/root/.debug/home/build/v4.16.0-rc4/vmlinux/44d954246227536955cb1ecbe9ef2a05665876b6/':
 No such file or directory
[root@jouet ~]#

Ok, so now I do:

[root@jouet ~]# perf annotate --stdio --vmlinux 
/lib/modules/4.16.0-rc4/build/vmlinux filemap_map_pages
Failed to open [kernel.kallsyms]_text, continuing without symbols
Error:
The perf.data file has no samples!
[root@jouet ~]# 


But I ran out of time today, this one needs a bit more investigation, I
couldn't get to that dso__disassemble_filename() in the above case :-\
 
> For https://patchwork.kernel.org/patch/10211483/, I'm not sure how to go 
> about doing a reply to all.

So, no need for that, just state here that you provide your Signed-off-by: to
it and I'll add it, which is what I'm doing now since this seems to be your
intent, right?

I'll just add another Link: tag pointing to your reply to -this- message,
if it comes with a S-o-B for https://patchwork.kernel.org/patch/10211483/, ok?

- Arnaldo
 
> I had some email problems and was cut-off from the list for a while.
> 
> MV
> 
> 
> On 03/09/18 13:24, Arnaldo Carvalho de Melo wrote:
> > Em Fri, Mar 09, 2018 at 12:07:20PM -0600, Kim Phillips escreveu:
> > > On Fri, 9 Mar 2018 12:06:27 -0300
> > > Arnaldo Carvalho de Melo  wrote:
> > > 
> > > Hi Arnaldo,
> > > 
> > > > Em Thu, Mar 08, 2018 at 09:10:30PM -0600, Kim Phillips escreveu:
> > > > > Based on prior work:
> > > > > 
> > > > > https://lkml.org/lkml/2014/5/6/395
> > > > Thanks, looks good, applying.
> > > > 
> > > > Jean, is everything ok with you on this?
> > > By now your email to Jean should have bounced with "The email account
> > > that you tried to reach does not exist."  Removing Jean from Cc.
> > > 
> > > It seems like you're applying patches.  There are a couple that have
> > > slipped through the cracks: Can you please take a look at applying them?
> > > 
> > > - "perf tools: Fixing uninitialised variable"
> > >https://patchwork.kernel.org/patch/10179381/
> > [acme@jouet perf]$ git tag --contains 
> > d2785de15f1bd42d613d56bbac5a007e7293b874
> > perf-core-for-mingo-4.17-20180216
> > 
> > commit d2785de15f1bd42d613d56bbac5a007e7293b874
> > Author: Mathieu Poirier 
> > AuthorDate: Mon Feb 12 13:32:37 2018 -0700
> > Commit: Arnaldo 

Re: [PATCH] perf tools arm64: Add libdw DWARF post unwind support for ARM64

2018-03-09 Thread Martin Vuille

Yes, thought of doing that.

Unfortunately it was sent directly from git, so I do not have a copy of the 
message that was sent.

MV


On 03/09/18 14:15, Kim Phillips wrote:

On Fri, 9 Mar 2018 13:49:50 -0500
Martin Vuille  wrote:


For https://patchwork.kernel.org/patch/10211483/, I'm not sure how to go about 
doing a reply to all.

Hit reply-all from the copy in your Sent folder.

Kim
--
To unsubscribe from this list: send the line "unsubscribe linux-perf-users" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html




Re: [PATCH] perf tools arm64: Add libdw DWARF post unwind support for ARM64

2018-03-09 Thread Martin Vuille

Yes, thought of doing that.

Unfortunately it was sent directly from git, so I do not have a copy of the 
message that was sent.

MV


On 03/09/18 14:15, Kim Phillips wrote:

On Fri, 9 Mar 2018 13:49:50 -0500
Martin Vuille  wrote:


For https://patchwork.kernel.org/patch/10211483/, I'm not sure how to go about 
doing a reply to all.

Hit reply-all from the copy in your Sent folder.

Kim
--
To unsubscribe from this list: send the line "unsubscribe linux-perf-users" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html




Re: [PATCH] perf tools arm64: Add libdw DWARF post unwind support for ARM64

2018-03-09 Thread Kim Phillips
On Fri, 9 Mar 2018 13:49:50 -0500
Martin Vuille  wrote:

> For https://patchwork.kernel.org/patch/10211483/, I'm not sure how to go 
> about doing a reply to all.

Hit reply-all from the copy in your Sent folder.

Kim


Re: [PATCH] perf tools arm64: Add libdw DWARF post unwind support for ARM64

2018-03-09 Thread Kim Phillips
On Fri, 9 Mar 2018 13:49:50 -0500
Martin Vuille  wrote:

> For https://patchwork.kernel.org/patch/10211483/, I'm not sure how to go 
> about doing a reply to all.

Hit reply-all from the copy in your Sent folder.

Kim


Re: [PATCH] perf tools arm64: Add libdw DWARF post unwind support for ARM64

2018-03-09 Thread Martin Vuille

Hi,

I made two other submissions that may also have been overlooked:

https://patchwork.kernel.org/patch/10211401/ -- This one has the S-o-B

https://patchwork.kernel.org/patch/10211473/ -- RFC, was looking for comments, 
has the S-o-B


For https://patchwork.kernel.org/patch/10211483/, I'm not sure how to go about 
doing a reply to all.

I had some email problems and was cut-off from the list for a while.

MV


On 03/09/18 13:24, Arnaldo Carvalho de Melo wrote:

Em Fri, Mar 09, 2018 at 12:07:20PM -0600, Kim Phillips escreveu:

On Fri, 9 Mar 2018 12:06:27 -0300
Arnaldo Carvalho de Melo  wrote:

Hi Arnaldo,


Em Thu, Mar 08, 2018 at 09:10:30PM -0600, Kim Phillips escreveu:

Based on prior work:

https://lkml.org/lkml/2014/5/6/395

Thanks, looks good, applying.

Jean, is everything ok with you on this?

By now your email to Jean should have bounced with "The email account
that you tried to reach does not exist."  Removing Jean from Cc.

It seems like you're applying patches.  There are a couple that have
slipped through the cracks: Can you please take a look at applying them?

- "perf tools: Fixing uninitialised variable"
   https://patchwork.kernel.org/patch/10179381/

[acme@jouet perf]$ git tag --contains d2785de15f1bd42d613d56bbac5a007e7293b874
perf-core-for-mingo-4.17-20180216

commit d2785de15f1bd42d613d56bbac5a007e7293b874
Author: Mathieu Poirier 
AuthorDate: Mon Feb 12 13:32:37 2018 -0700
Commit: Arnaldo Carvalho de Melo 
CommitDate: Fri Feb 16 14:55:40 2018 -0300

 perf auxtrace arm: Fixing uninitialised variable
 
 When working natively on arm64 the compiler gets pesky and complains

 that variable 'i' is uninitialised, something that breaks the
 compilation.  Here no further checks are needed since variable
 'found_spe' can only be true if variable 'i' has been initialised as
 part of the for loop.
 
 Signed-off-by: Mathieu Poirier 

 Cc: Alexander Shishkin 
 Cc: Jin Yao 
 Cc: Namhyung Kim 
 Cc: Peter Zijlstra 
 Cc: linux-arm-ker...@lists.infradead.org
 Link: 
http://lkml.kernel.org/r/1518467557-18505-4-git-send-email-mathieu.poir...@linaro.org
 Signed-off-by: Arnaldo Carvalho de Melo 

diff --git a/tools/perf/arch/arm/util/auxtrace.c 
b/tools/perf/arch/arm/util/auxtrace.c
index 2323581b157d..fa639e3e52ac 100644
--- a/tools/perf/arch/arm/util/auxtrace.c
+++ b/tools/perf/arch/arm/util/auxtrace.c
@@ -68,7 +68,7 @@ struct auxtrace_record
 bool found_spe = false;
 static struct perf_pmu **arm_spe_pmus = NULL;
 static int nr_spes = 0;
-   int i;
+   int i = 0;
  

- "perf unwind: Report error from dwfl_attach_state"
   https://patchwork.kernel.org/patch/10211483/
   [Martin, I guess it would help if you replied-all that patch and
added your signed-off-by.]

Right, the S-o-B is needed
  

- "perf unwind: Unwind with libdw doesn't take symfs into account"
   https://patchwork.kernel.org/patch/10211599/

This one has the S-o-B, applying, Jiri, holler if you disagree,

- Arnaldo
  

Thanks,

Kim

--
To unsubscribe from this list: send the line "unsubscribe linux-perf-users" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html




Re: [PATCH] perf tools arm64: Add libdw DWARF post unwind support for ARM64

2018-03-09 Thread Martin Vuille

Hi,

I made two other submissions that may also have been overlooked:

https://patchwork.kernel.org/patch/10211401/ -- This one has the S-o-B

https://patchwork.kernel.org/patch/10211473/ -- RFC, was looking for comments, 
has the S-o-B


For https://patchwork.kernel.org/patch/10211483/, I'm not sure how to go about 
doing a reply to all.

I had some email problems and was cut-off from the list for a while.

MV


On 03/09/18 13:24, Arnaldo Carvalho de Melo wrote:

Em Fri, Mar 09, 2018 at 12:07:20PM -0600, Kim Phillips escreveu:

On Fri, 9 Mar 2018 12:06:27 -0300
Arnaldo Carvalho de Melo  wrote:

Hi Arnaldo,


Em Thu, Mar 08, 2018 at 09:10:30PM -0600, Kim Phillips escreveu:

Based on prior work:

https://lkml.org/lkml/2014/5/6/395

Thanks, looks good, applying.

Jean, is everything ok with you on this?

By now your email to Jean should have bounced with "The email account
that you tried to reach does not exist."  Removing Jean from Cc.

It seems like you're applying patches.  There are a couple that have
slipped through the cracks: Can you please take a look at applying them?

- "perf tools: Fixing uninitialised variable"
   https://patchwork.kernel.org/patch/10179381/

[acme@jouet perf]$ git tag --contains d2785de15f1bd42d613d56bbac5a007e7293b874
perf-core-for-mingo-4.17-20180216

commit d2785de15f1bd42d613d56bbac5a007e7293b874
Author: Mathieu Poirier 
AuthorDate: Mon Feb 12 13:32:37 2018 -0700
Commit: Arnaldo Carvalho de Melo 
CommitDate: Fri Feb 16 14:55:40 2018 -0300

 perf auxtrace arm: Fixing uninitialised variable
 
 When working natively on arm64 the compiler gets pesky and complains

 that variable 'i' is uninitialised, something that breaks the
 compilation.  Here no further checks are needed since variable
 'found_spe' can only be true if variable 'i' has been initialised as
 part of the for loop.
 
 Signed-off-by: Mathieu Poirier 

 Cc: Alexander Shishkin 
 Cc: Jin Yao 
 Cc: Namhyung Kim 
 Cc: Peter Zijlstra 
 Cc: linux-arm-ker...@lists.infradead.org
 Link: 
http://lkml.kernel.org/r/1518467557-18505-4-git-send-email-mathieu.poir...@linaro.org
 Signed-off-by: Arnaldo Carvalho de Melo 

diff --git a/tools/perf/arch/arm/util/auxtrace.c 
b/tools/perf/arch/arm/util/auxtrace.c
index 2323581b157d..fa639e3e52ac 100644
--- a/tools/perf/arch/arm/util/auxtrace.c
+++ b/tools/perf/arch/arm/util/auxtrace.c
@@ -68,7 +68,7 @@ struct auxtrace_record
 bool found_spe = false;
 static struct perf_pmu **arm_spe_pmus = NULL;
 static int nr_spes = 0;
-   int i;
+   int i = 0;
  

- "perf unwind: Report error from dwfl_attach_state"
   https://patchwork.kernel.org/patch/10211483/
   [Martin, I guess it would help if you replied-all that patch and
added your signed-off-by.]

Right, the S-o-B is needed
  

- "perf unwind: Unwind with libdw doesn't take symfs into account"
   https://patchwork.kernel.org/patch/10211599/

This one has the S-o-B, applying, Jiri, holler if you disagree,

- Arnaldo
  

Thanks,

Kim

--
To unsubscribe from this list: send the line "unsubscribe linux-perf-users" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html




Re: [PATCH] perf tools arm64: Add libdw DWARF post unwind support for ARM64

2018-03-09 Thread Arnaldo Carvalho de Melo
Em Fri, Mar 09, 2018 at 12:07:20PM -0600, Kim Phillips escreveu:
> On Fri, 9 Mar 2018 12:06:27 -0300
> Arnaldo Carvalho de Melo  wrote:
> 
> Hi Arnaldo,
> 
> > Em Thu, Mar 08, 2018 at 09:10:30PM -0600, Kim Phillips escreveu:
> > > Based on prior work:
> > > 
> > > https://lkml.org/lkml/2014/5/6/395
> > 
> > Thanks, looks good, applying.
> > 
> > Jean, is everything ok with you on this?
> 
> By now your email to Jean should have bounced with "The email account
> that you tried to reach does not exist."  Removing Jean from Cc.
> 
> It seems like you're applying patches.  There are a couple that have
> slipped through the cracks: Can you please take a look at applying them?
> 
> - "perf tools: Fixing uninitialised variable"
>   https://patchwork.kernel.org/patch/10179381/

[acme@jouet perf]$ git tag --contains d2785de15f1bd42d613d56bbac5a007e7293b874
perf-core-for-mingo-4.17-20180216

commit d2785de15f1bd42d613d56bbac5a007e7293b874
Author: Mathieu Poirier 
AuthorDate: Mon Feb 12 13:32:37 2018 -0700
Commit: Arnaldo Carvalho de Melo 
CommitDate: Fri Feb 16 14:55:40 2018 -0300

perf auxtrace arm: Fixing uninitialised variable

When working natively on arm64 the compiler gets pesky and complains
that variable 'i' is uninitialised, something that breaks the
compilation.  Here no further checks are needed since variable
'found_spe' can only be true if variable 'i' has been initialised as
part of the for loop.

Signed-off-by: Mathieu Poirier 
Cc: Alexander Shishkin 
Cc: Jin Yao 
Cc: Namhyung Kim 
Cc: Peter Zijlstra 
Cc: linux-arm-ker...@lists.infradead.org
Link: 
http://lkml.kernel.org/r/1518467557-18505-4-git-send-email-mathieu.poir...@linaro.org
Signed-off-by: Arnaldo Carvalho de Melo 

diff --git a/tools/perf/arch/arm/util/auxtrace.c 
b/tools/perf/arch/arm/util/auxtrace.c
index 2323581b157d..fa639e3e52ac 100644
--- a/tools/perf/arch/arm/util/auxtrace.c
+++ b/tools/perf/arch/arm/util/auxtrace.c
@@ -68,7 +68,7 @@ struct auxtrace_record
bool found_spe = false;
static struct perf_pmu **arm_spe_pmus = NULL;
static int nr_spes = 0;
-   int i;
+   int i = 0;
 
> - "perf unwind: Report error from dwfl_attach_state"
>   https://patchwork.kernel.org/patch/10211483/
>   [Martin, I guess it would help if you replied-all that patch and
>added your signed-off-by.]

Right, the S-o-B is needed
 
> - "perf unwind: Unwind with libdw doesn't take symfs into account"
>   https://patchwork.kernel.org/patch/10211599/

This one has the S-o-B, applying, Jiri, holler if you disagree,

- Arnaldo
 
> Thanks,
> 
> Kim


Re: [PATCH] perf tools arm64: Add libdw DWARF post unwind support for ARM64

2018-03-09 Thread Arnaldo Carvalho de Melo
Em Fri, Mar 09, 2018 at 12:07:20PM -0600, Kim Phillips escreveu:
> On Fri, 9 Mar 2018 12:06:27 -0300
> Arnaldo Carvalho de Melo  wrote:
> 
> Hi Arnaldo,
> 
> > Em Thu, Mar 08, 2018 at 09:10:30PM -0600, Kim Phillips escreveu:
> > > Based on prior work:
> > > 
> > > https://lkml.org/lkml/2014/5/6/395
> > 
> > Thanks, looks good, applying.
> > 
> > Jean, is everything ok with you on this?
> 
> By now your email to Jean should have bounced with "The email account
> that you tried to reach does not exist."  Removing Jean from Cc.
> 
> It seems like you're applying patches.  There are a couple that have
> slipped through the cracks: Can you please take a look at applying them?
> 
> - "perf tools: Fixing uninitialised variable"
>   https://patchwork.kernel.org/patch/10179381/

[acme@jouet perf]$ git tag --contains d2785de15f1bd42d613d56bbac5a007e7293b874
perf-core-for-mingo-4.17-20180216

commit d2785de15f1bd42d613d56bbac5a007e7293b874
Author: Mathieu Poirier 
AuthorDate: Mon Feb 12 13:32:37 2018 -0700
Commit: Arnaldo Carvalho de Melo 
CommitDate: Fri Feb 16 14:55:40 2018 -0300

perf auxtrace arm: Fixing uninitialised variable

When working natively on arm64 the compiler gets pesky and complains
that variable 'i' is uninitialised, something that breaks the
compilation.  Here no further checks are needed since variable
'found_spe' can only be true if variable 'i' has been initialised as
part of the for loop.

Signed-off-by: Mathieu Poirier 
Cc: Alexander Shishkin 
Cc: Jin Yao 
Cc: Namhyung Kim 
Cc: Peter Zijlstra 
Cc: linux-arm-ker...@lists.infradead.org
Link: 
http://lkml.kernel.org/r/1518467557-18505-4-git-send-email-mathieu.poir...@linaro.org
Signed-off-by: Arnaldo Carvalho de Melo 

diff --git a/tools/perf/arch/arm/util/auxtrace.c 
b/tools/perf/arch/arm/util/auxtrace.c
index 2323581b157d..fa639e3e52ac 100644
--- a/tools/perf/arch/arm/util/auxtrace.c
+++ b/tools/perf/arch/arm/util/auxtrace.c
@@ -68,7 +68,7 @@ struct auxtrace_record
bool found_spe = false;
static struct perf_pmu **arm_spe_pmus = NULL;
static int nr_spes = 0;
-   int i;
+   int i = 0;
 
> - "perf unwind: Report error from dwfl_attach_state"
>   https://patchwork.kernel.org/patch/10211483/
>   [Martin, I guess it would help if you replied-all that patch and
>added your signed-off-by.]

Right, the S-o-B is needed
 
> - "perf unwind: Unwind with libdw doesn't take symfs into account"
>   https://patchwork.kernel.org/patch/10211599/

This one has the S-o-B, applying, Jiri, holler if you disagree,

- Arnaldo
 
> Thanks,
> 
> Kim


Re: [PATCH] perf tools arm64: Add libdw DWARF post unwind support for ARM64

2018-03-09 Thread Kim Phillips
On Fri, 9 Mar 2018 12:06:27 -0300
Arnaldo Carvalho de Melo  wrote:

Hi Arnaldo,

> Em Thu, Mar 08, 2018 at 09:10:30PM -0600, Kim Phillips escreveu:
> > Based on prior work:
> > 
> > https://lkml.org/lkml/2014/5/6/395
> 
> Thanks, looks good, applying.
> 
> Jean, is everything ok with you on this?

By now your email to Jean should have bounced with "The email account
that you tried to reach does not exist."  Removing Jean from Cc.

It seems like you're applying patches.  There are a couple that have
slipped through the cracks: Can you please take a look at applying them?

- "perf tools: Fixing uninitialised variable"
  https://patchwork.kernel.org/patch/10179381/

- "perf unwind: Report error from dwfl_attach_state"
  https://patchwork.kernel.org/patch/10211483/
  [Martin, I guess it would help if you replied-all that patch and
   added your signed-off-by.]

- "perf unwind: Unwind with libdw doesn't take symfs into account"
  https://patchwork.kernel.org/patch/10211599/

Thanks,

Kim


Re: [PATCH] perf tools arm64: Add libdw DWARF post unwind support for ARM64

2018-03-09 Thread Kim Phillips
On Fri, 9 Mar 2018 12:06:27 -0300
Arnaldo Carvalho de Melo  wrote:

Hi Arnaldo,

> Em Thu, Mar 08, 2018 at 09:10:30PM -0600, Kim Phillips escreveu:
> > Based on prior work:
> > 
> > https://lkml.org/lkml/2014/5/6/395
> 
> Thanks, looks good, applying.
> 
> Jean, is everything ok with you on this?

By now your email to Jean should have bounced with "The email account
that you tried to reach does not exist."  Removing Jean from Cc.

It seems like you're applying patches.  There are a couple that have
slipped through the cracks: Can you please take a look at applying them?

- "perf tools: Fixing uninitialised variable"
  https://patchwork.kernel.org/patch/10179381/

- "perf unwind: Report error from dwfl_attach_state"
  https://patchwork.kernel.org/patch/10211483/
  [Martin, I guess it would help if you replied-all that patch and
   added your signed-off-by.]

- "perf unwind: Unwind with libdw doesn't take symfs into account"
  https://patchwork.kernel.org/patch/10211599/

Thanks,

Kim


Re: [PATCH] perf tools arm64: Add libdw DWARF post unwind support for ARM64

2018-03-09 Thread Arnaldo Carvalho de Melo
Em Thu, Mar 08, 2018 at 09:10:30PM -0600, Kim Phillips escreveu:
> Based on prior work:
> 
> https://lkml.org/lkml/2014/5/6/395

Thanks, looks good, applying.

Jean, is everything ok with you on this?

- Arnaldo
 
> and how other arches add libdw unwind support.  Includes support for
> running the unwind test, e.g., on a system with only elfutils' libdw
> 0.170, the test now runs, and successfully:
> 
> $ ./perf test unwind
> 56: Test dwarf unwind : Ok
> 
> Reported-by: Christian Hansen 
> Originally-by: Jean Pihet 
> Cc: Peter Zijlstra 
> Cc: Ingo Molnar 
> Cc: Arnaldo Carvalho de Melo 
> Cc: Alexander Shishkin 
> Cc: Jiri Olsa 
> Cc: Namhyung Kim 
> Cc: linux-kernel@vger.kernel.org
> Cc: linux-perf-us...@vger.kernel.org
> Signed-off-by: Kim Phillips 
> ---
>  tools/perf/Makefile.config |  2 +-
>  tools/perf/arch/arm64/include/arch-tests.h | 12 ++
>  tools/perf/arch/arm64/tests/Build  |  3 ++
>  tools/perf/arch/arm64/tests/arch-tests.c   | 16 
>  tools/perf/arch/arm64/util/Build   |  1 +
>  tools/perf/arch/arm64/util/unwind-libdw.c  | 60 
> ++
>  6 files changed, 93 insertions(+), 1 deletion(-)
>  create mode 100644 tools/perf/arch/arm64/include/arch-tests.h
>  create mode 100644 tools/perf/arch/arm64/tests/arch-tests.c
>  create mode 100644 tools/perf/arch/arm64/util/unwind-libdw.c
> 
> diff --git a/tools/perf/Makefile.config b/tools/perf/Makefile.config
> index 89cb2a36b8ff..98ff73648b51 100644
> --- a/tools/perf/Makefile.config
> +++ b/tools/perf/Makefile.config
> @@ -75,7 +75,7 @@ endif
>  # Disable it on all other architectures in case libdw unwind
>  # support is detected in system. Add supported architectures
>  # to the check.
> -ifneq ($(SRCARCH),$(filter $(SRCARCH),x86 arm powerpc s390))
> +ifneq ($(SRCARCH),$(filter $(SRCARCH),x86 arm arm64 powerpc s390))
>NO_LIBDW_DWARF_UNWIND := 1
>  endif
>  
> diff --git a/tools/perf/arch/arm64/include/arch-tests.h 
> b/tools/perf/arch/arm64/include/arch-tests.h
> new file mode 100644
> index ..90ec4c8cb880
> --- /dev/null
> +++ b/tools/perf/arch/arm64/include/arch-tests.h
> @@ -0,0 +1,12 @@
> +/* SPDX-License-Identifier: GPL-2.0 */
> +#ifndef ARCH_TESTS_H
> +#define ARCH_TESTS_H
> +
> +#ifdef HAVE_DWARF_UNWIND_SUPPORT
> +struct thread;
> +struct perf_sample;
> +#endif
> +
> +extern struct test arch_tests[];
> +
> +#endif
> diff --git a/tools/perf/arch/arm64/tests/Build 
> b/tools/perf/arch/arm64/tests/Build
> index b30eff9bcc83..ca5630e73474 100644
> --- a/tools/perf/arch/arm64/tests/Build
> +++ b/tools/perf/arch/arm64/tests/Build
> @@ -1,2 +1,5 @@
>  libperf-y += regs_load.o
>  libperf-y += dwarf-unwind.o
> +
> +libperf-y += arch-tests.o
> +
> diff --git a/tools/perf/arch/arm64/tests/arch-tests.c 
> b/tools/perf/arch/arm64/tests/arch-tests.c
> new file mode 100644
> index ..5b1543c98022
> --- /dev/null
> +++ b/tools/perf/arch/arm64/tests/arch-tests.c
> @@ -0,0 +1,16 @@
> +// SPDX-License-Identifier: GPL-2.0
> +#include 
> +#include "tests/tests.h"
> +#include "arch-tests.h"
> +
> +struct test arch_tests[] = {
> +#ifdef HAVE_DWARF_UNWIND_SUPPORT
> + {
> + .desc = "DWARF unwind",
> + .func = test__dwarf_unwind,
> + },
> +#endif
> + {
> + .func = NULL,
> + },
> +};
> diff --git a/tools/perf/arch/arm64/util/Build 
> b/tools/perf/arch/arm64/util/Build
> index c0b8dfef98ba..68f8a8eb3ad0 100644
> --- a/tools/perf/arch/arm64/util/Build
> +++ b/tools/perf/arch/arm64/util/Build
> @@ -2,6 +2,7 @@ libperf-y += header.o
>  libperf-y += sym-handling.o
>  libperf-$(CONFIG_DWARF) += dwarf-regs.o
>  libperf-$(CONFIG_LOCAL_LIBUNWIND) += unwind-libunwind.o
> +libperf-$(CONFIG_LIBDW_DWARF_UNWIND) += unwind-libdw.o
>  
>  libperf-$(CONFIG_AUXTRACE) += ../../arm/util/pmu.o \
> ../../arm/util/auxtrace.o \
> diff --git a/tools/perf/arch/arm64/util/unwind-libdw.c 
> b/tools/perf/arch/arm64/util/unwind-libdw.c
> new file mode 100644
> index ..7623d85e77f3
> --- /dev/null
> +++ b/tools/perf/arch/arm64/util/unwind-libdw.c
> @@ -0,0 +1,60 @@
> +// SPDX-License-Identifier: GPL-2.0
> +#include 
> +#include "../../util/unwind-libdw.h"
> +#include "../../util/perf_regs.h"
> +#include "../../util/event.h"
> +
> +bool libdw__arch_set_initial_registers(Dwfl_Thread *thread, void *arg)
> +{
> + struct unwind_info *ui = arg;
> + struct regs_dump *user_regs = >sample->user_regs;
> + Dwarf_Word dwarf_regs[PERF_REG_ARM64_MAX], dwarf_pc;
> +
> +#define REG(r) ({\
> + Dwarf_Word val = 0; \
> + perf_reg_value(, user_regs, PERF_REG_ARM64_##r);\
> + val; 

Re: [PATCH] perf tools arm64: Add libdw DWARF post unwind support for ARM64

2018-03-09 Thread Arnaldo Carvalho de Melo
Em Thu, Mar 08, 2018 at 09:10:30PM -0600, Kim Phillips escreveu:
> Based on prior work:
> 
> https://lkml.org/lkml/2014/5/6/395

Thanks, looks good, applying.

Jean, is everything ok with you on this?

- Arnaldo
 
> and how other arches add libdw unwind support.  Includes support for
> running the unwind test, e.g., on a system with only elfutils' libdw
> 0.170, the test now runs, and successfully:
> 
> $ ./perf test unwind
> 56: Test dwarf unwind : Ok
> 
> Reported-by: Christian Hansen 
> Originally-by: Jean Pihet 
> Cc: Peter Zijlstra 
> Cc: Ingo Molnar 
> Cc: Arnaldo Carvalho de Melo 
> Cc: Alexander Shishkin 
> Cc: Jiri Olsa 
> Cc: Namhyung Kim 
> Cc: linux-kernel@vger.kernel.org
> Cc: linux-perf-us...@vger.kernel.org
> Signed-off-by: Kim Phillips 
> ---
>  tools/perf/Makefile.config |  2 +-
>  tools/perf/arch/arm64/include/arch-tests.h | 12 ++
>  tools/perf/arch/arm64/tests/Build  |  3 ++
>  tools/perf/arch/arm64/tests/arch-tests.c   | 16 
>  tools/perf/arch/arm64/util/Build   |  1 +
>  tools/perf/arch/arm64/util/unwind-libdw.c  | 60 
> ++
>  6 files changed, 93 insertions(+), 1 deletion(-)
>  create mode 100644 tools/perf/arch/arm64/include/arch-tests.h
>  create mode 100644 tools/perf/arch/arm64/tests/arch-tests.c
>  create mode 100644 tools/perf/arch/arm64/util/unwind-libdw.c
> 
> diff --git a/tools/perf/Makefile.config b/tools/perf/Makefile.config
> index 89cb2a36b8ff..98ff73648b51 100644
> --- a/tools/perf/Makefile.config
> +++ b/tools/perf/Makefile.config
> @@ -75,7 +75,7 @@ endif
>  # Disable it on all other architectures in case libdw unwind
>  # support is detected in system. Add supported architectures
>  # to the check.
> -ifneq ($(SRCARCH),$(filter $(SRCARCH),x86 arm powerpc s390))
> +ifneq ($(SRCARCH),$(filter $(SRCARCH),x86 arm arm64 powerpc s390))
>NO_LIBDW_DWARF_UNWIND := 1
>  endif
>  
> diff --git a/tools/perf/arch/arm64/include/arch-tests.h 
> b/tools/perf/arch/arm64/include/arch-tests.h
> new file mode 100644
> index ..90ec4c8cb880
> --- /dev/null
> +++ b/tools/perf/arch/arm64/include/arch-tests.h
> @@ -0,0 +1,12 @@
> +/* SPDX-License-Identifier: GPL-2.0 */
> +#ifndef ARCH_TESTS_H
> +#define ARCH_TESTS_H
> +
> +#ifdef HAVE_DWARF_UNWIND_SUPPORT
> +struct thread;
> +struct perf_sample;
> +#endif
> +
> +extern struct test arch_tests[];
> +
> +#endif
> diff --git a/tools/perf/arch/arm64/tests/Build 
> b/tools/perf/arch/arm64/tests/Build
> index b30eff9bcc83..ca5630e73474 100644
> --- a/tools/perf/arch/arm64/tests/Build
> +++ b/tools/perf/arch/arm64/tests/Build
> @@ -1,2 +1,5 @@
>  libperf-y += regs_load.o
>  libperf-y += dwarf-unwind.o
> +
> +libperf-y += arch-tests.o
> +
> diff --git a/tools/perf/arch/arm64/tests/arch-tests.c 
> b/tools/perf/arch/arm64/tests/arch-tests.c
> new file mode 100644
> index ..5b1543c98022
> --- /dev/null
> +++ b/tools/perf/arch/arm64/tests/arch-tests.c
> @@ -0,0 +1,16 @@
> +// SPDX-License-Identifier: GPL-2.0
> +#include 
> +#include "tests/tests.h"
> +#include "arch-tests.h"
> +
> +struct test arch_tests[] = {
> +#ifdef HAVE_DWARF_UNWIND_SUPPORT
> + {
> + .desc = "DWARF unwind",
> + .func = test__dwarf_unwind,
> + },
> +#endif
> + {
> + .func = NULL,
> + },
> +};
> diff --git a/tools/perf/arch/arm64/util/Build 
> b/tools/perf/arch/arm64/util/Build
> index c0b8dfef98ba..68f8a8eb3ad0 100644
> --- a/tools/perf/arch/arm64/util/Build
> +++ b/tools/perf/arch/arm64/util/Build
> @@ -2,6 +2,7 @@ libperf-y += header.o
>  libperf-y += sym-handling.o
>  libperf-$(CONFIG_DWARF) += dwarf-regs.o
>  libperf-$(CONFIG_LOCAL_LIBUNWIND) += unwind-libunwind.o
> +libperf-$(CONFIG_LIBDW_DWARF_UNWIND) += unwind-libdw.o
>  
>  libperf-$(CONFIG_AUXTRACE) += ../../arm/util/pmu.o \
> ../../arm/util/auxtrace.o \
> diff --git a/tools/perf/arch/arm64/util/unwind-libdw.c 
> b/tools/perf/arch/arm64/util/unwind-libdw.c
> new file mode 100644
> index ..7623d85e77f3
> --- /dev/null
> +++ b/tools/perf/arch/arm64/util/unwind-libdw.c
> @@ -0,0 +1,60 @@
> +// SPDX-License-Identifier: GPL-2.0
> +#include 
> +#include "../../util/unwind-libdw.h"
> +#include "../../util/perf_regs.h"
> +#include "../../util/event.h"
> +
> +bool libdw__arch_set_initial_registers(Dwfl_Thread *thread, void *arg)
> +{
> + struct unwind_info *ui = arg;
> + struct regs_dump *user_regs = >sample->user_regs;
> + Dwarf_Word dwarf_regs[PERF_REG_ARM64_MAX], dwarf_pc;
> +
> +#define REG(r) ({\
> + Dwarf_Word val = 0; \
> + perf_reg_value(, user_regs, PERF_REG_ARM64_##r);\
> + val;\
> +})
> +
> + dwarf_regs[0]  = REG(X0);
> + dwarf_regs[1]  = REG(X1);
> + dwarf_regs[2]  = REG(X2);
> + dwarf_regs[3]  = REG(X3);
> +