Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1429876
| From | Nilay Vaish <nilayvaish@gmail.com> |
|---|---|
| Newsgroups | linux.kernel |
| Subject | Re: [PATCH v10 04/10] perf evlist: Introduce aux evlist |
| Date | 2016-06-23 16:20 +0200 |
| Message-ID | <rNdE5-2KN-7@gated-at.bofh.it> (permalink) |
| References | <rN5nb-5t9-1@gated-at.bofh.it> <rN5nb-5t9-13@gated-at.bofh.it> |
| Organization | linux.* mail to news gateway |
On 23 June 2016 at 00:27, Wang Nan <wangnan0@huawei.com> wrote: > An auxiliary evlist is created by perf_evlist__new_aux() using an > existing evlist as its parent. An auxiliary evlist can have its own > 'struct perf_mmap', but can't have any other data. User should use its > parent instead when accessing other data. > > Auxiliary evlists are containers of 'struct perf_mmap'. It is introduced > to allow its parent evlist to map different events into separated mmaps. > > Following commits create an auxiliary evlist for overwritable > events, because overwritable events need a read only and backwards ring > buffer, which is different from normal events. > > To achieve this goal, this patch carefully changes 'evlist' to > 'evlist->parent' in all functions in the path of 'perf_evlist__mmap_ex', > except 'evlist->mmap' related operations, to make sure all evlist > modifications (like pollfd and event id hash tables) goes to original > evlist. > > A 'evlist->parent' pointer is added to 'struct perf_evlist' and points to > the evlist itself for normal evlists. > > Children of one evlist are linked into it so one can find all children > from its parent. > > To avoid potential complexity, forbid creating aux evlist from another > aux evlist. > > Improve perf_evlist__munmap_filtered(), so when recording, if an event > is terminated, unmap mmaps, from parent and children. > > Signed-off-by: Wang Nan <wangnan0@huawei.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: pi3orama@163.com > --- > tools/perf/util/evlist.c | 49 +++++++++++++++++++++++++++++++++++++----------- > tools/perf/util/evlist.h | 12 ++++++++++++ > 2 files changed, 50 insertions(+), 11 deletions(-) Wang, thanks for making the change. The patch seems perfectly fine to me. -- Nilay
Back to linux.kernel | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
[PATCH v10 00/10] perf tools: Support overwritable ring buffer Wang Nan <wangnan0@huawei.com> - 2016-06-23 07:30 +0200
[PATCH v10 07/10] perf record: Read from overwritable ring buffer Wang Nan <wangnan0@huawei.com> - 2016-06-23 07:30 +0200
Re: [PATCH v10 07/10] perf record: Read from overwritable ring buffer Nilay Vaish <nilayvaish@gmail.com> - 2016-06-23 16:30 +0200
Re: [PATCH v10 07/10] perf record: Read from overwritable ring buffer pi3orama <pi3orama@163.com> - 2016-06-23 16:40 +0200
Re: [PATCH v10 07/10] perf record: Read from overwritable ring buffer Nilay Vaish <nilayvaish@gmail.com> - 2016-06-23 19:40 +0200
[PATCH v10 04/10] perf evlist: Introduce aux evlist Wang Nan <wangnan0@huawei.com> - 2016-06-23 07:30 +0200
Re: [PATCH v10 04/10] perf evlist: Introduce aux evlist Nilay Vaish <nilayvaish@gmail.com> - 2016-06-23 16:20 +0200
[PATCH v10 09/10] perf tools: Don't warn about out of order event if write_backward is used Wang Nan <wangnan0@huawei.com> - 2016-06-23 07:30 +0200
[PATCH v10 10/10] perf tools: Add --tail-synthesize option Wang Nan <wangnan0@huawei.com> - 2016-06-23 07:40 +0200
[PATCH v10 03/10] perf record: Prepare picking perf_event_mmap_page from multiple evlists Wang Nan <wangnan0@huawei.com> - 2016-06-23 07:40 +0200
[PATCH v10 06/10] perf record: Introduce rec->overwrite_evlist for overwritable events Wang Nan <wangnan0@huawei.com> - 2016-06-23 07:40 +0200
[PATCH v10 08/10] perf tools: Enable overwrite settings Wang Nan <wangnan0@huawei.com> - 2016-06-23 07:40 +0200
[PATCH v10 01/10] perf record: Prepare mmap multiple evlists Wang Nan <wangnan0@huawei.com> - 2016-06-23 07:40 +0200
[PATCH v10 02/10] perf record: Prepare reading from multiple evlists in record__mmap_read_all() Wang Nan <wangnan0@huawei.com> - 2016-06-23 07:40 +0200
[PATCH v10 05/10] perf tests: Add testcase for auxiliary evlist Wang Nan <wangnan0@huawei.com> - 2016-06-23 07:40 +0200
csiph-web