Web lists-archives.com

RE: [PATCH 0/7] perf tools: Clarify overwrite and backward, bugfix




> Based on previous discussion, perf needs to support only two types
> of ringbuffer: read-write + forward, readonly + backward. This patchset
> completly removes the concept of 'overwrite' from code level, controls
> mapping permission using write_backward instead.

I think I suggested to remove the concept of backward/forward, keep
the overwrite. That's from user's perspective.
Here you use read-write + forward and readonly + backward, which
should be from kernel 's perspective. It's OK for me either.
However, we should make the concepts connected by clearly documented,
not just in changelog.

I suggest you may create a new file, ringbuffer.txt, in Documentation to
explain, the types of ringbuffer, how do they work, what's connections
between overwrite and readonly + backward, and so on. 


> 
> Wang Nan (7):
>   perf mmap: Fix perf backward recording
>   perf tests: Set evlist of test__backward_ring_buffer() to !overwrite
>   perf tests: Set evlist of test__sw_clock_freq() to !overwrite
>   perf tests: Set evlist of test__basic_mmap() to !overwrite
>   perf tests: Set evlist of test__task_exit() to !overwrite
>   perf tools: Remove 'overwrite' concept from code level
>   perf tools: Remove prot field in mmap param
> 

You had another related fix "perf tool: Don't discard prev in backward
mode" https://lkml.org/lkml/2017/10/12/408
It has not been merged yet. It needs to backport.
I think you may want to add it in this series as well.


Thanks,
Kan

>  tools/perf/arch/x86/tests/perf-time-to-tsc.c |  2 +-
>  tools/perf/builtin-kvm.c                     |  2 +-
>  tools/perf/builtin-record.c                  |  4 ++--
>  tools/perf/builtin-top.c                     |  2 +-
>  tools/perf/builtin-trace.c                   |  2 +-
>  tools/perf/tests/backward-ring-buffer.c      |  2 +-
>  tools/perf/tests/bpf.c                       |  2 +-
>  tools/perf/tests/code-reading.c              |  2 +-
>  tools/perf/tests/keep-tracking.c             |  2 +-
>  tools/perf/tests/mmap-basic.c                |  2 +-
>  tools/perf/tests/openat-syscall-tp-fields.c  |  2 +-
>  tools/perf/tests/perf-record.c               |  2 +-
>  tools/perf/tests/sw-clock.c                  |  2 +-
>  tools/perf/tests/switch-tracking.c           |  2 +-
>  tools/perf/tests/task-exit.c                 |  2 +-
>  tools/perf/util/evlist.c                     | 21 ++++++++++-----------
>  tools/perf/util/evlist.h                     |  6 ++----
>  tools/perf/util/mmap.c                       | 10 +++++-----
>  tools/perf/util/mmap.h                       |  6 +++---
>  tools/perf/util/python.c                     | 10 +++++-----
>  20 files changed, 41 insertions(+), 44 deletions(-)
> 
> --
> 2.10.1