From: Jiri Olsa <jolsa@redhat.com>
To: Namhyung Kim <namhyung@kernel.org>
Cc: Jiri Olsa <jolsa@kernel.org>,
Arnaldo Carvalho de Melo <acme@kernel.org>,
lkml <linux-kernel@vger.kernel.org>,
Ingo Molnar <mingo@kernel.org>, David Ahern <dsahern@gmail.com>,
Alexander Shishkin <alexander.shishkin@linux.intel.com>,
Peter Zijlstra <a.p.zijlstra@chello.nl>,
kernel-team@lge.com
Subject: Re: [PATCH 6/9] perf tools: Don't search for active kernel start in __machine__create_kernel_maps
Date: Mon, 19 Feb 2018 11:01:40 +0100 [thread overview]
Message-ID: <20180219100140.GA17630@krava> (raw)
In-Reply-To: <20180219022036.GB1583@sejong>
On Mon, Feb 19, 2018 at 11:20:36AM +0900, Namhyung Kim wrote:
SNIP
> > +static void machine__set_kernel_mmap(struct machine *machine,
> > + u64 start, u64 end)
> > +{
> > + int i;
> > +
> > + for (i = 0; i < MAP__NR_TYPES; i++) {
> > + machine->vmlinux_maps[i]->start = start;
> > + machine->vmlinux_maps[i]->end = end;
> > +
> > + /*
> > + * Be a bit paranoid here, some perf.data file came with
> > + * a zero sized synthesized MMAP event for the kernel.
> > + */
> > + if (machine->vmlinux_maps[i]->end == 0)
> > + machine->vmlinux_maps[i]->end = ~0ULL;
>
> Hmm.. this will make map_groups__fixup_end() below not working since
> it only updates if the end address of a map is zero.
>
> And about the paranoid check, AFAIK the only case it cares is the
> machine__process_kernel_mmap_event() which calls it with
> event->mmap.start and event->mmap.start + event->mmap.len. Thus, in
> order for the end to be zero, both start and len should be zero. Then
> I think this condition can be changed like below:
>
> diff --git a/tools/perf/util/machine.c b/tools/perf/util/machine.c
> index fe27ef55cbb9..c8acb603c359 100644
> --- a/tools/perf/util/machine.c
> +++ b/tools/perf/util/machine.c
> @@ -1226,7 +1226,7 @@ static void machine__set_kernel_mmap(struct machine *machine,
> * Be a bit paranoid here, some perf.data file came with
> * a zero sized synthesized MMAP event for the kernel.
> */
> - if (machine->vmlinux_maps[i]->end == 0)
> + if (start == 0 && end == 0)
> machine->vmlinux_maps[i]->end = ~0ULL;
> }
right, the call from machine__create_kernel_maps will have always
the start != 0 and there will be subsequent map_groups__fixup_end
call..
seems ok to me.. will you send the patch?
thanks,
jirka
next prev parent reply other threads:[~2018-02-19 10:01 UTC|newest]
Thread overview: 36+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-02-15 12:26 [PATCHv3 0/9] perf tool: Assorted fixes Jiri Olsa
2018-02-15 12:26 ` [PATCH 1/9] tools lib symbol: Skip non-address kallsyms line Jiri Olsa
2018-02-17 11:24 ` [tip:perf/core] " tip-bot for Jiri Olsa
2018-02-15 12:26 ` [PATCH 2/9] perf tools: Check if we read regular file in dso__load Jiri Olsa
2018-02-17 11:24 ` [tip:perf/core] perf symbols: Check if we read regular file in dso__load() tip-bot for Jiri Olsa
2018-02-15 12:26 ` [PATCH 3/9] perf tools: Free root_dir in machine__init error path Jiri Olsa
2018-02-17 11:25 ` [tip:perf/core] perf machine: Free root_dir in machine__init() " tip-bot for Jiri Olsa
2018-02-15 12:26 ` [PATCH 4/9] perf tools: Move kernel mmap name into struct machine Jiri Olsa
2018-02-17 11:25 ` [tip:perf/core] perf machine: " tip-bot for Jiri Olsa
2018-02-15 12:26 ` [PATCH 5/9] perf tools: Generalize machine__set_kernel_mmap function Jiri Olsa
2018-02-17 11:26 ` [tip:perf/core] perf machine: Generalize machine__set_kernel_mmap() tip-bot for Jiri Olsa
2018-02-15 12:26 ` [PATCH 6/9] perf tools: Don't search for active kernel start in __machine__create_kernel_maps Jiri Olsa
2018-02-17 11:26 ` [tip:perf/core] perf machine: " tip-bot for Jiri Olsa
2018-02-19 2:20 ` [PATCH 6/9] perf tools: " Namhyung Kim
2018-02-19 10:01 ` Jiri Olsa [this message]
2018-02-19 10:19 ` Namhyung Kim
2018-02-19 10:49 ` Jiri Olsa
2018-02-19 12:18 ` Arnaldo Carvalho de Melo
2018-04-11 23:07 ` [PATCH] Revert "perf machine: Fix paranoid check in machine__set_kernel_mmap()" Kim Phillips
2018-04-11 23:31 ` Namhyung Kim
2018-04-12 0:29 ` Kim Phillips
2018-04-12 1:57 ` Namhyung Kim
2018-04-13 0:09 ` Kim Phillips
2018-04-13 7:36 ` Namhyung Kim
2018-02-21 10:25 ` [tip:perf/core] perf machine: Fix paranoid check in machine__set_kernel_mmap() tip-bot for Namhyung Kim
2018-02-19 12:21 ` [PATCH 6/9] perf tools: Don't search for active kernel start in __machine__create_kernel_maps Arnaldo Carvalho de Melo
2018-02-19 14:05 ` Namhyung Kim
2018-02-15 12:26 ` [PATCH 7/9] perf tools: Remove machine__load_kallsyms function Jiri Olsa
2018-02-17 11:27 ` [tip:perf/core] perf machine: Remove machine__load_kallsyms() tip-bot for Jiri Olsa
2018-02-15 12:26 ` [PATCH 8/9] perf tools: Do not create kernel maps in sample__resolve Jiri Olsa
2018-02-17 11:27 ` [tip:perf/core] perf tools: Do not create kernel maps in sample__resolve() tip-bot for Jiri Olsa
2018-02-15 12:26 ` [PATCH 9/9] perf tests: Use arch__compare_symbol_names to compare symbols Jiri Olsa
2018-02-15 14:27 ` Arnaldo Carvalho de Melo
2018-02-15 14:48 ` Naveen N. Rao
2018-02-15 15:10 ` Arnaldo Carvalho de Melo
2018-02-17 11:28 ` [tip:perf/core] " tip-bot for Jiri Olsa
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=20180219100140.GA17630@krava \
--to=jolsa@redhat.com \
--cc=a.p.zijlstra@chello.nl \
--cc=acme@kernel.org \
--cc=alexander.shishkin@linux.intel.com \
--cc=dsahern@gmail.com \
--cc=jolsa@kernel.org \
--cc=kernel-team@lge.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@kernel.org \
--cc=namhyung@kernel.org \
/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.