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


Groups > linux.kernel > #1617584

Re: [PATCH v1 1/5] perf/core: Define the common branch type classification

From "Jin, Yao" <yao.jin@linux.intel.com>
Newsgroups linux.kernel
Subject Re: [PATCH v1 1/5] perf/core: Define the common branch type classification
Date 2017-04-06 10:30 +0200
Message-ID <ttaXL-63S-5@gated-at.bofh.it> (permalink)
References <tqZap-1ug-3@gated-at.bofh.it> <tqZaq-1ug-9@gated-at.bofh.it> <tsxtn-5Xs-9@gated-at.bofh.it> <tt9yG-52M-25@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw



On 4/6/2017 2:58 PM, Peter Zijlstra wrote:
> On Tue, Apr 04, 2017 at 11:18:05AM -0300, Arnaldo Carvalho de Melo wrote:
>> Adding the perf kernel maintainers to the CC list.
> Thanks.
>
>> Em Fri, Mar 31, 2017 at 11:18:38PM +0800, Jin Yao escreveu:
>>> It is often useful to know the branch types while analyzing branch
>>> data. For example, a call is very different from a conditional branch.
>>>
>>> Currently we have to look it up in binary while the binary may later
>>> not be available and even the binary is available but user has to take
>>> some time. It is very useful for user to check it directly in perf
>>> report.
>>>
>>> Perf already has support for disassembling the branch instruction
>>> to get the branch type. The branch type is defined in lbr.c.
>>>
>>> To keep consistent on kernel and userspace and make the classification
>>> more common, the patch adds the common branch type classification
>>> in perf_event.h.
>>>
>>> Since the disassembling of branch instruction needs some overhead,
>>> a new PERF_SAMPLE_BRANCH_TYPE_SAVE is introduced to indicate if it
>>> needs to disassemble the branch instruction and record the branch
>>> type.
> I don't get it. Why is the kernel interface mucked with for a user-space
> feature?
>
> That's wrong.
Hi, otherwise we have to maintain 2 branch type copies between kernel 
and user-space.

For example, currently X86_BR_* are defined in lbr.c. To display the 
branch type in user-space, the user-space has to maintain the same copy 
for X86_BR_*. I didn't get a better idea.

Thanks
Jin Yao

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


Thread

[PATCH v1 0/5] perf report: Show branch type Jin Yao <yao.jin@linux.intel.com> - 2017-03-31 09:30 +0200
  [PATCH v1 1/5] perf/core: Define the common branch type classification Jin Yao <yao.jin@linux.intel.com> - 2017-03-31 09:30 +0200
    Re: [PATCH v1 1/5] perf/core: Define the common branch type  classification Arnaldo Carvalho de Melo <acme@kernel.org> - 2017-04-04 16:20 +0200
      Re: [PATCH v1 1/5] perf/core: Define the common branch type  classification "Jin, Yao" <yao.jin@linux.intel.com> - 2017-04-04 18:00 +0200
        Re: [PATCH v1 1/5] perf/core: Define the common branch type  classification Arnaldo Carvalho de Melo <acme@kernel.org> - 2017-04-04 18:20 +0200
          Re: [PATCH v1 1/5] perf/core: Define the common branch type  classification "Jin, Yao" <yao.jin@linux.intel.com> - 2017-04-06 02:10 +0200
      Re: [PATCH v1 1/5] perf/core: Define the common branch type  classification Peter Zijlstra <peterz@infradead.org> - 2017-04-06 09:00 +0200
        Re: [PATCH v1 1/5] perf/core: Define the common branch type  classification "Jin, Yao" <yao.jin@linux.intel.com> - 2017-04-06 10:30 +0200
          Re: [PATCH v1 1/5] perf/core: Define the common branch type  classification Peter Zijlstra <peterz@infradead.org> - 2017-04-06 11:30 +0200
            Re: [PATCH v1 1/5] perf/core: Define the common branch type  classification "Jin, Yao" <yao.jin@linux.intel.com> - 2017-04-06 16:50 +0200
              Re: [PATCH v1 1/5] perf/core: Define the common branch type  classification Peter Zijlstra <peterz@infradead.org> - 2017-04-06 19:00 +0200
                Re: [PATCH v1 1/5] perf/core: Define the common branch type  classification "Jin, Yao" <yao.jin@linux.intel.com> - 2017-04-07 04:20 +0200
  [PATCH v1 5/5] perf report: Show branch type in callchain entry Jin Yao <yao.jin@linux.intel.com> - 2017-03-31 09:30 +0200
  [PATCH v1 4/5] perf report: Show branch type statistics for stdio mode Jin Yao <yao.jin@linux.intel.com> - 2017-03-31 09:30 +0200
  [PATCH v1 3/5] perf record: Create a new option save_type in --branch-filter Jin Yao <yao.jin@linux.intel.com> - 2017-03-31 09:30 +0200

csiph-web