All of lore.kernel.org
 help / color / mirror / Atom feed
From: Peter Zijlstra <peterz@infradead.org>
To: Stephane Eranian <eranian@google.com>
Cc: linux-kernel@vger.kernel.org, mingo@elte.hu, acme@redhat.com,
	ming.m.lin@intel.com, andi@firstfloor.org,
	robert.richter@amd.com, ravitillo@lbl.gov, will.deacon@arm.com,
	paulus@samba.org, benh@kernel.crashing.org, rth@twiddle.net,
	ralf@linux-mips.org, davem@davemloft.net, lethal@linux-sh.org
Subject: Re: [PATCH 07/12] perf_events: add LBR software filter support for Intel X86 (v2)
Date: Mon, 05 Dec 2011 23:29:40 +0100	[thread overview]
Message-ID: <1323124180.32012.45.camel@twins> (raw)
In-Reply-To: <1318595833-29984-8-git-send-email-eranian@google.com>

On Fri, 2011-10-14 at 14:37 +0200, Stephane Eranian wrote:
> 
> This patch adds an internal sofware filter to complement
> the (optional) LBR hardware filter.
> 
> The software filter is necessary:
> - as a substitute when there is no HW LBR filter (e.g., Atom, Core)
> - to complement HW LBR filter in case of errata (e.g., Nehalem/Westmere)
> - to provide finer grain filtering (e.g., all processors)
> 
> Sometimes, the LBR HW filter cannot distinguish between two types
> of branches. For instance, to capture syscall as CALLS, it is necessary
> to enable the LBR_FAR filter which will also capture JMP instructions.
> Thus, a second pass is necessary to filter those out, this is what the
> SW filter can do.
> 
> The SW filter is built on top of the internal x86 disassembler. It
> is a best effort filter especially for user level code. It is subject
> to the availability of the text page of the program.
> 
> The SW filter is enabled on all Intel X86 processors. It is bypassed
> when the user is capturing all branches at all priv levels.

This patch is very seriously whitespace challenged. 

  reply	other threads:[~2011-12-05 22:30 UTC|newest]

Thread overview: 36+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-10-14 12:37 [PATCH 00/12] perf_events: add support for sampling taken branches (v2) Stephane Eranian
2011-10-14 12:37 ` [PATCH 01/12] perf_events: add generic taken branch sampling support (v2) Stephane Eranian
2011-12-05 21:06   ` Peter Zijlstra
2011-12-06 19:42     ` Stephane Eranian
2011-12-05 22:14   ` Peter Zijlstra
2011-12-06 19:27     ` Stephane Eranian
2011-10-14 12:37 ` [PATCH 02/12] perf_events: add Intel LBR MSR definitions (v2) Stephane Eranian
2011-10-14 12:37 ` [PATCH 03/12] perf_events: add Intel X86 LBR sharing logic (v2) Stephane Eranian
2011-10-14 12:37 ` [PATCH 04/12] perf_events: sync branch stack sampling with X86 precise_sampling (v2) Stephane Eranian
2011-10-14 12:37 ` [PATCH 05/12] perf_events: add LBR mappings for PERF_SAMPLE_BRANCH filters (v2) Stephane Eranian
2011-12-05 22:35   ` Peter Zijlstra
2011-12-07  4:22     ` Stephane Eranian
2011-10-14 12:37 ` [PATCH 06/12] perf_events: implement PERF_SAMPLE_BRANCH for Intel X86 (v2) Stephane Eranian
2011-10-14 12:37 ` [PATCH 07/12] perf_events: add LBR software filter support " Stephane Eranian
2011-12-05 22:29   ` Peter Zijlstra [this message]
2011-10-14 12:37 ` [PATCH 08/12] perf_events: disable PERF_SAMPLE_BRANCH_* when not supported (v2) Stephane Eranian
2011-10-14 12:37 ` [PATCH 09/12] perf_events: add hook to flush branch_stack on context switch (v2) Stephane Eranian
2011-12-05 21:10   ` Peter Zijlstra
2011-12-05 21:37   ` Peter Zijlstra
2011-12-07 18:25     ` Stephane Eranian
2011-12-08 10:49       ` Peter Zijlstra
2011-12-08 18:04         ` Stephane Eranian
2011-12-08 18:13           ` Peter Zijlstra
2011-12-08 22:06             ` Stephane Eranian
2011-12-09  9:00               ` Peter Zijlstra
2011-10-14 12:37 ` [PATCH 10/12] perf: add code to support PERF_SAMPLE_BRANCH_STACK (v2) Stephane Eranian
2011-10-14 12:37 ` [PATCH 11/12] perf: add support for sampling taken branch to perf record (v2) Stephane Eranian
2011-10-14 12:37 ` [PATCH 12/12] perf: add support for taken branch sampling to perf report (v2) Stephane Eranian
2011-12-04 20:11 ` [PATCH 00/12] perf_events: add support for sampling taken branches (v2) Stephane Eranian
2011-12-05 15:27   ` Peter Zijlstra
2011-12-05 22:39 ` Peter Zijlstra
2011-12-06  9:49   ` Will Deacon
2011-12-06 11:03     ` Peter Zijlstra
2011-12-06 19:14       ` Stephane Eranian
2011-12-06 19:20         ` Peter Zijlstra
2011-12-06 19:22           ` Stephane Eranian

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1323124180.32012.45.camel@twins \
    --to=peterz@infradead.org \
    --cc=acme@redhat.com \
    --cc=andi@firstfloor.org \
    --cc=benh@kernel.crashing.org \
    --cc=davem@davemloft.net \
    --cc=eranian@google.com \
    --cc=lethal@linux-sh.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=ming.m.lin@intel.com \
    --cc=mingo@elte.hu \
    --cc=paulus@samba.org \
    --cc=ralf@linux-mips.org \
    --cc=ravitillo@lbl.gov \
    --cc=robert.richter@amd.com \
    --cc=rth@twiddle.net \
    --cc=will.deacon@arm.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.