Re: [PATCH net-next 1/3] perf: generalize perf_callchain

Alexei Starovoitov
2016-02-25T16:38:48Z

On 2/25/16 6:18 AM, Peter Zijlstra wrote:
> On Wed, Feb 17, 2016 at 07:58:57PM -0800, Alexei Starovoitov wrote:
>> . avoid walking the stack when there is no room left in the buffer
>> . generalize get_perf_callchain() to be called from bpf helper
>
> If it does two things it should be two patches.

could have been two patches, but it will only add more churn
to the same lines. what's the concern?

>> Signed-off-by: Alexei Starovoitov <ast@kernel.org>
>> ---
>> arch/x86/include/asm/stacktrace.h | 2 +-
>> arch/x86/kernel/cpu/perf_event.c | 4 ++--
>> arch/x86/kernel/dumpstack.c | 6 ++++--
>> arch/x86/kernel/stacktrace.c | 18 +++++++++++-------
>> arch/x86/oprofile/backtrace.c | 3 ++-
>> include/linux/perf_event.h | 13 +++++++++++--
>> kernel/events/callchain.c | 32 ++++++++++++++++++++------------
>> kernel/events/internal.h | 2 --
>> 8 files changed, 51 insertions(+), 29 deletions(-)
>
> And at the very least this should have had a note that it doesn't break
> all the other archs that implement perf-callchain stuff.

the cross-arch interface is two weak functions
perf_callchain_kernel() and perf_callchain_user()
and back into generic via perf_callchain_store().
Nothing changes there. The code speaks for itself.
"non-x86 archs are not broken" would be a silly comment.