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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.