Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1444351

Re: [PATCH v16 05/15] perf tools: Record mmap cookie into fdarray private field

From Jiri Olsa <jolsa@redhat.com>
Newsgroups linux.kernel
Subject Re: [PATCH v16 05/15] perf tools: Record mmap cookie into fdarray private field
Date 2016-07-15 17:00 +0200
Message-ID <rVcKR-8a2-3@gated-at.bofh.it> (permalink)
References <rUKlz-7jX-3@gated-at.bofh.it> <rUKlC-7jX-85@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


On Thu, Jul 14, 2016 at 08:34:37AM +0000, Wang Nan wrote:
> Insetad of saving a index into fdarray entries private field, save the
> corresponding 'struct perf_mmap' pointer, and release them directly
> using perf_mmap__put().
> 
> Following commits introduce multiple mmap arrays to evlist. Without this
> patch, perf_evlist__munmap_filtered() is unable to retrive correct
> 'struct perf_mmap' pointer.
> 
> Signed-off-by: Wang Nan <wangnan0@huawei.com>
> Cc: Arnaldo Carvalho de Melo <acme@redhat.com>
> Cc: He Kuang <hekuang@huawei.com>
> Cc: Jiri Olsa <jolsa@kernel.org>
> Cc: Masami Hiramatsu <mhiramat@kernel.org>
> Cc: Namhyung Kim <namhyung@kernel.org>
> Cc: Zefan Li <lizefan@huawei.com>
> Cc: Nilay Vaish <nilayvaish@gmail.com>
> Cc: pi3orama@163.com
> ---
>  tools/perf/util/evlist.c | 15 +++++++++------
>  1 file changed, 9 insertions(+), 6 deletions(-)
> 
> diff --git a/tools/perf/util/evlist.c b/tools/perf/util/evlist.c
> index a4137e0..1462085 100644
> --- a/tools/perf/util/evlist.c
> +++ b/tools/perf/util/evlist.c
> @@ -30,6 +30,7 @@
>  static void perf_evlist__mmap_put(struct perf_evlist *evlist, int idx);
>  static void __perf_evlist__munmap(struct perf_evlist *evlist, int idx);
>  static void perf_mmap__munmap(struct perf_mmap *map);
> +static void perf_mmap__put(struct perf_mmap *map);
>  
>  #define FD(e, x, y) (*(int *)xyarray__entry(e->fd, x, y))
>  #define SID(e, x, y) xyarray__entry(e->sample_id, x, y)
> @@ -466,7 +467,8 @@ int perf_evlist__alloc_pollfd(struct perf_evlist *evlist)
>  	return 0;
>  }
>  
> -static int __perf_evlist__add_pollfd(struct perf_evlist *evlist, int fd, int idx, short revent)
> +static int __perf_evlist__add_pollfd(struct perf_evlist *evlist, int fd,
> +				     struct perf_mmap *map, short revent)
>  {
>  	int pos = fdarray__add(&evlist->pollfd, fd, revent | POLLERR | POLLHUP);
>  	/*
> @@ -474,7 +476,7 @@ static int __perf_evlist__add_pollfd(struct perf_evlist *evlist, int fd, int idx
>  	 * close the associated evlist->mmap[] entry.
>  	 */
>  	if (pos >= 0) {
> -		evlist->pollfd.priv[pos].idx = idx;
> +		evlist->pollfd.priv[pos].ptr = map;

looks like there's no user for idx now, patch below compiles for me
I guess we should remove it..

jirka


---
diff --git a/tools/lib/api/fd/array.h b/tools/lib/api/fd/array.h
index 71287dddc05f..54041a4ded39 100644
--- a/tools/lib/api/fd/array.h
+++ b/tools/lib/api/fd/array.h
@@ -21,7 +21,6 @@ struct fdarray {
 	int	       nr_autogrow;
 	struct pollfd *entries;
 	union {
-		int    idx;
 		void   *ptr;
 	} *priv;
 };

Back to linux.kernel | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

[PATCH v16 00/15] perf tools: Support overwritable ring buffer Wang Nan <wangnan0@huawei.com> - 2016-07-14 10:40 +0200
  [PATCH v16 15/15] perf tools: Add --tail-synthesize option Wang Nan <wangnan0@huawei.com> - 2016-07-14 10:40 +0200
    [tip:perf/core] perf record: Add --tail-synthesize option tip-bot for Wang Nan <tipbot@zytor.com> - 2016-07-16 23:00 +0200
  [PATCH v16 05/15] perf tools: Record mmap cookie into fdarray private field Wang Nan <wangnan0@huawei.com> - 2016-07-14 10:40 +0200
    Re: [PATCH v16 05/15] perf tools: Record mmap cookie into fdarray  private field Jiri Olsa <jolsa@redhat.com> - 2016-07-15 17:00 +0200
    [tip:perf/core] perf evlist: Record mmap cookie into fdarray  private field tip-bot for Wang Nan <tipbot@zytor.com> - 2016-07-16 22:50 +0200
  [PATCH v16 02/15] tools lib fd array: Allow associating a pointer cookie with each entry Wang Nan <wangnan0@huawei.com> - 2016-07-14 10:40 +0200
    [tip:perf/core] tools lib fd array: Allow associating a pointer  cookie with each entry tip-bot for Wang Nan <tipbot@zytor.com> - 2016-07-16 22:50 +0200
  [PATCH v16 10/15] perf tools: Setup backward mmap state machine Wang Nan <wangnan0@huawei.com> - 2016-07-14 10:40 +0200
    [tip:perf/core] perf evlist: Setup backward mmap state machine tip-bot for Wang Nan <tipbot@zytor.com> - 2016-07-16 22:50 +0200
  [PATCH v16 03/15] perf tools: Update perf evlist mmap related APIs and helpers Wang Nan <wangnan0@huawei.com> - 2016-07-14 10:40 +0200
    [tip:perf/core] perf evlist: Update mmap related APIs and helpers tip-bot for Wang Nan <tipbot@zytor.com> - 2016-07-16 22:50 +0200
  [PATCH v16 08/15] perf tools: Map backward events to backward_mmap Wang Nan <wangnan0@huawei.com> - 2016-07-14 10:40 +0200
    [tip:perf/core] perf evlist: Map backward events to backward_mmap tip-bot for Wang Nan <tipbot@zytor.com> - 2016-07-16 22:50 +0200
  Re: [PATCH v16 00/15] perf tools: Support overwritable ring buffer Jiri Olsa <jolsa@redhat.com> - 2016-07-15 17:10 +0200

csiph-web