From: Jiri Olsa <jolsa@redhat.com>
To: Song Liu <songliubraving@fb.com>
Cc: lkml <linux-kernel@vger.kernel.org>,
"acme@kernel.org" <acme@kernel.org>, Jiri Olsa <jolsa@kernel.org>,
Peter Zijlstra <peterz@infradead.org>,
"wangnan0@huawei.com" <wangnan0@huawei.com>,
Kernel Team <Kernel-team@fb.com>
Subject: Re: perf tools: remove option --tail-synthesize ?
Date: Wed, 21 Nov 2018 11:47:10 +0100 [thread overview]
Message-ID: <20181121104710.GA9402@krava> (raw)
In-Reply-To: <89AC26A9-5A18-4608-8889-9C3C9C1C69D3@fb.com>
On Wed, Nov 21, 2018 at 07:45:28AM +0000, Song Liu wrote:
> Hi,
>
> I found perf-record --tail-synthesize without --overwrite breaks symbols
> for perf-script, perf-report, etc. For example:
>
> [root@]# ~/perf record -ag --tail-synthesize -- sleep 1
> [ perf record: Woken up 1 times to write data ]
> [ perf record: Captured and wrote 1.129 MB perf.data (3531 samples) ]
> [root@]# ~/perf script | head
> swapper 0 [000] 1250675.051971: 1 cycles:ppp:
> ffffffff81009e15 [unknown] ([unknown])
> ffffffff81196b19 [unknown] ([unknown])
> ffffffff81196579 [unknown] ([unknown])
> ffffffff81110ca7 [unknown] ([unknown])
> ffffffff81a01f4a [unknown] ([unknown])
> ffffffff81a017bf [unknown] ([unknown])
> ffffffff8180e17a [unknown] ([unknown])
>
> perf-record with --overwrite does NOT have this issue.
actualy I think that now it works properly, if you turn on
task and mmap events, you'll see the samples get resolved
right after aux events are processed:
[root@krava perf]# ./perf script --show-info --show-task-events --show-mmap-events
...
swapper 0 [007] 620566.187355: 64821 cycles:ppp:
ffffffffab0b4d7c [unknown] ([unknown])
ffffffffaba01b1f [unknown] ([unknown])
ffffffffab75d567 [unknown] ([unknown])
ffffffffab0e1f56 [unknown] ([unknown])
ffffffffab0e216f [unknown] ([unknown])
ffffffffab050dc7 [unknown] ([unknown])
ffffffffab0000d5 [unknown] ([unknown])
swapper 0 [000] 0.000000: PERF_RECORD_MMAP -1/0: [0xffffffffab000000(0x152c8000) @ 0xffffffffab000000]: x [kernel.kallsyms]_text
swapper 0 [000] 0.000000: PERF_RECORD_MMAP -1/0: [0xffffffffc02c8000(0x4000) @ 0]: x /lib/modules/4.18.17-200.fc28.x86_64/kernel/drivers/thermal/int340x_thermal/int3403_thermal.ko.xz
swapper 0 [000] 0.000000: PERF_RECORD_MMAP -1/0: [0xffffffffc02cd000(0x4000) @ 0]: x /lib/modules/4.18.17-200.fc28.x86_64/kernel/drivers/thermal/intel_pch_thermal.ko.xz
...
ext4-rsv-conver 0 [000] 0.000000: PERF_RECORD_COMM: ext4-rsv-conver:989/989
perf 20063 [005] 620566.187438: 1056712 cycles:ppp:
ffffffffab1f605d filemap_map_pages+0x9d (/usr/lib/debug/lib/modules/4.18.17-200.fc28.x86_64/vmlinux)
ffffffffab23aaa8 __handle_mm_fault+0x1018 (/usr/lib/debug/lib/modules/4.18.17-200.fc28.x86_64/vmlinux)
ffffffffab23ae7a handle_mm_fault+0xda (/usr/lib/debug/lib/modules/4.18.17-200.fc28.x86_64/vmlinux)
ffffffffab06ac90 __do_page_fault+0x240 (/usr/lib/debug/lib/modules/4.18.17-200.fc28.x86_64/vmlinux)
ffffffffab06af62 do_page_fault+0x32 (/usr/lib/debug/lib/modules/4.18.17-200.fc28.x86_64/vmlinux)
ffffffffaba010ee page_fault+0x1e (/usr/lib/debug/lib/modules/4.18.17-200.fc28.x86_64/vmlinux)
...
if you record with --overwrite and --tail-synthesize the aux events
will go to the top of the perf.data, so all's good
>
> After digging into this, I found this issue is introduced by commit
> a73e24d240bc136619d382b1268f34d75c9d25ce.
right, we got rid of that, because it will store the 'current/live'
server mmaps for report/script, which is not what you want
> Reverting this commit does fix this issue. However, on a second thought,
> I feel it is probably better just drop --tail-synthesize, as it doesn't
> make much sense without --overwrite. All we need is to do tail_synthesize
> when --overwrite is set.
>
> Thoughts?
maybe we should make --tail-synthesize non optionable for --overwrite,
and get rid of that option completely.. Wang, any idea?
but definitelly not allow that for non overwrite
thanks,
jirka
next prev parent reply other threads:[~2018-11-21 10:47 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-11-21 7:45 perf tools: remove option --tail-synthesize ? Song Liu
2018-11-21 10:47 ` Jiri Olsa [this message]
2018-11-21 17:56 ` Song Liu
2018-11-21 13:11 ` Arnaldo Carvalho de Melo
2018-11-22 1:50 ` Wangnan (F)
2018-11-22 9:03 ` Jiri Olsa
2018-11-22 18:18 ` Song Liu
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=20181121104710.GA9402@krava \
--to=jolsa@redhat.com \
--cc=Kernel-team@fb.com \
--cc=acme@kernel.org \
--cc=jolsa@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=peterz@infradead.org \
--cc=songliubraving@fb.com \
--cc=wangnan0@huawei.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