RE: [PATCH 0/7] perf tools: Clarify overwrite and backward, bugfix
From: Liang, Kan
Date: Mon Nov 13 2017 - 09:49:32 EST
> 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