Re: [PATCH] perf report: Fix segfault with '-F phys_daddr'

From: Ravi Bangoria
Date: Tue Nov 12 2019 - 08:58:19 EST




On 11/12/19 4:34 PM, Arnaldo Carvalho de Melo wrote:
Em Tue, Nov 12, 2019 at 11:19:46AM +0530, Ravi Bangoria escreveu:
If perf.data file is not recorded with mem-info, adding 'phys_daddr'
to output field in perf report results in segfault. Fix that.

Before:
$ ./perf record ls
$ ./perf report -F +phys_daddr
Segmentation fault (core dumped)

After:
$ ./perf report -F +phys_daddr
Samples: 11 of event 'cycles:u', Event count (approx.): 1485821
Overhead Data Physical Address Command Shared Object Symbol
22.57% [.] 0000000000000000 ls libc-2.29.so [.] __strcoll_l
21.87% [.] 0000000000000000 ls ld-2.29.so [.] _dl_relocate_object
...

Shouldn't we instead just bail out and state that this isn't possible
and leave the user wondering why what was asked isn't presented?

You mean popup with something like "phys_daddr is not available in perf.data"
and also don't show that column in perf report?