From: Arnaldo Carvalho de Melo <acme@kernel.org>
To: Wang Nan <wangnan0@huawei.com>
Cc: linux-kernel@vger.kernel.org,
Arnaldo Carvalho de Melo <acme@redhat.com>,
Peter Zijlstra <peterz@infradead.org>,
Zefan Li <lizefan@huawei.com>,
pi3orama@163.com
Subject: Re: [PATCH 2/5] perf tools: Extract __perf_evlist__mmap_read()
Date: Tue, 26 Apr 2016 10:30:20 -0300 [thread overview]
Message-ID: <20160426133019.GF16708@kernel.org> (raw)
In-Reply-To: <1461637738-62722-3-git-send-email-wangnan0@huawei.com>
Em Tue, Apr 26, 2016 at 02:28:55AM +0000, Wang Nan escreveu:
> Extract event reader to __perf_evlist__mmap_read(). Future commit will
> feed it with manually computed 'head' and 'old' pointers.
>
> Signed-off-by: Wang Nan <wangnan0@huawei.com>
> Cc: Arnaldo Carvalho de Melo <acme@redhat.com>
> Cc: Peter Zijlstra <peterz@infradead.org>
> Cc: Zefan Li <lizefan@huawei.com>
> Cc: pi3orama@163.com
> ---
> tools/perf/util/evlist.c | 40 +++++++++++++++++++++++++---------------
> 1 file changed, 25 insertions(+), 15 deletions(-)
>
> diff --git a/tools/perf/util/evlist.c b/tools/perf/util/evlist.c
> index 85271e5..3ee94b2 100644
> --- a/tools/perf/util/evlist.c
> +++ b/tools/perf/util/evlist.c
> @@ -679,24 +679,15 @@ static struct perf_evsel *perf_evlist__event2evsel(struct perf_evlist *evlist,
> return NULL;
> }
>
> -union perf_event *perf_evlist__mmap_read(struct perf_evlist *evlist, int idx)
> +static union perf_event *
> +__perf_evlist__mmap_read(struct perf_mmap *md, bool overwrite, u64 head,
> + u64 old, u64 *prev)
> {
Ok, now this is not a perf_evlist method anymore, see the first
parameter? It handles perf_mmap instances, so please rename it to:
static union perf_event *perf_mmap__read(struct perf_mmap *md, bool overwrite,
u64 head, u64 *prev)
And thanks for leaving the renaming of those variables to the next
patch, that eases reviewieng indeed.
> - struct perf_mmap *md = &evlist->mmap[idx];
> - u64 head;
> - u64 old = md->prev;
>
> +union perf_event *perf_evlist__mmap_read(struct perf_evlist *evlist, int idx)
> +{
> + struct perf_mmap *md = &evlist->mmap[idx];
> + u64 head;
> + u64 old = md->prev;
> +
> + if (!atomic_read(&md->refcnt))
> + return NULL;
> +
> + head = perf_mmap__read_head(md);
> +
> + return __perf_evlist__mmap_read(md, evlist->overwrite, head,
> + old, &md->prev);
See that perf_mmap__read_head()? It acts on a struct perf_mmap too, thus
the prefix. This will end up as:
head = perf_mmap__read_head(md);
return perf_mmap__read(md, evlist->overwrite, head, old, &md->prev);
And see below yet another perf_mmap method, perf_mmap__empty()
Regards,
- Arnaldo
> +}
> +
> static bool perf_mmap__empty(struct perf_mmap *md)
> {
> return perf_mmap__read_head(md) == md->prev && !md->auxtrace_mmap.base;
> --
> 1.8.3.4
next prev parent reply other threads:[~2016-04-26 13:30 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-04-26 2:28 [PATCH 0/5] perf tools: Backward ring buffer support Wang Nan
2016-04-26 2:28 ` [PATCH 1/5] perf tools: Enforce ring buffer reading Wang Nan
2016-04-26 13:31 ` Arnaldo Carvalho de Melo
2016-04-27 15:34 ` [tip:perf/core] perf evlist: " tip-bot for Wang Nan
2016-04-26 2:28 ` [PATCH 2/5] perf tools: Extract __perf_evlist__mmap_read() Wang Nan
2016-04-26 13:30 ` Arnaldo Carvalho de Melo [this message]
2016-04-26 2:28 ` [PATCH 3/5] perf tools: Rename variable in __perf_evlist__mmap_read() Wang Nan
2016-04-26 2:28 ` [PATCH 4/5] perf tools: Support reading from backward ring buffer Wang Nan
2016-04-26 2:28 ` [PATCH 5/5] perf tests: Add test to check " Wang Nan
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=20160426133019.GF16708@kernel.org \
--to=acme@kernel.org \
--cc=acme@redhat.com \
--cc=linux-kernel@vger.kernel.org \
--cc=lizefan@huawei.com \
--cc=peterz@infradead.org \
--cc=pi3orama@163.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.