All of lore.kernel.org
 help / color / mirror / Atom feed
From: Frederic Weisbecker <fweisbec@gmail.com>
To: suravee.suthikulpanit@amd.com
Cc: mingo@kernel.org, mingo@redhat.com, jacob.w.shin@gmail.com,
	oleg@redhat.com, a.p.zijlstra@chello.nl, acme@ghostprotocols.net,
	hpa@zytor.com, tgl@domain.invalid, linux-kernel@vger.kernel.org,
	sherry.hurwitz@amd.com
Subject: Re: [PATCH V5 0/3] perf/x86/amd: AMD Family 16h Data Breakpoint Extensions
Date: Thu, 31 Oct 2013 10:43:24 +0100	[thread overview]
Message-ID: <20131031094322.GD2253@localhost.localdomain> (raw)
In-Reply-To: <1380730268-25807-1-git-send-email-suravee.suthikulpanit@amd.com>

On Wed, Oct 02, 2013 at 11:11:05AM -0500, suravee.suthikulpanit@amd.com wrote:
> From: Suravee Suthikulpanit <suravee.suthikulpanit@amd.com>
> 
> Frederic, this is the rebase of the V4 patch onto the linux-3.12.0-rc3 (linux.git),
> and retest.
> 
> The following patchset enables hardware breakpoint bp_len greater than
> HW_BREAKPOINT_LEN_8 on AMD Family 16h and later.
> 
>   $ perf stat -e mem:0x1000/16:w a.out
>                             ^^
>                             bp_len
> 
> This will count writes to [0x1000 ~ 0x1010)

This interface looks good to me. I mean it seems flexible enough to provide
a range of address that fits anyway whenever the architecture supports breakpoint
ranges through either a length or a mask.

Thanks.

> 
> V5:
> * Rebase onto 3.12.0-rc3.
> * Modify the tools/perf/util/parse-events.y due to change in
>   parse_events_add_breakpoint().
> 
> V4:
> Even more per Oleg's suggestion:
> * Further simplify info->len and info->mask setting switch statement
> 
> V3:
> More per Oleg's suggestion:
> * Use already existing bp_len instead of changing userland API and
>   in kernel turn bp_len into proper AMD hardware breakpoint address
>   mask.
> 
> V2:
> Per Oleg's suggestions:
> * Moved testing of bp_addr_mask to validate_hw_breakpoint()
> * Changed perf tool syntax to mem:<addr>[/addr_mask][:access]
> 
> 
> Jacob Shin (3):
>   perf/x86/amd: AMD support for bp_len > HW_BREAKPOINT_LEN_8
>   perf tools: allow user to specify hardware breakpoint bp_len
>   perf tools: add hardware breakpoint bp_len test cases
> 
>  arch/x86/include/asm/cpufeature.h        |  2 ++
>  arch/x86/include/asm/debugreg.h          |  5 +++
>  arch/x86/include/asm/hw_breakpoint.h     |  1 +
>  arch/x86/include/uapi/asm/msr-index.h    |  4 +++
>  arch/x86/kernel/cpu/amd.c                | 19 +++++++++++
>  arch/x86/kernel/hw_breakpoint.c          | 47 +++++++++++----------------
>  tools/perf/Documentation/perf-record.txt |  7 ++--
>  tools/perf/tests/parse-events.c          | 55 ++++++++++++++++++++++++++++++++
>  tools/perf/util/parse-events.c           | 17 ++++------
>  tools/perf/util/parse-events.h           |  2 +-
>  tools/perf/util/parse-events.l           |  1 +
>  tools/perf/util/parse-events.y           | 26 +++++++++++++--
>  12 files changed, 142 insertions(+), 44 deletions(-)
> 
> -- 
> 1.8.1.2
> 
> 

      parent reply	other threads:[~2013-10-31  9:43 UTC|newest]

Thread overview: 31+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-10-02 16:11 [PATCH V5 0/3] perf/x86/amd: AMD Family 16h Data Breakpoint Extensions suravee.suthikulpanit
2013-10-02 16:11 ` [PATCH 1/3] perf/x86/amd: AMD support for bp_len > HW_BREAKPOINT_LEN_8 suravee.suthikulpanit
2013-10-31  9:58   ` Frederic Weisbecker
2013-10-31 10:48     ` Borislav Petkov
2013-10-31 11:23       ` Frederic Weisbecker
2013-11-02  4:34         ` Borislav Petkov
2013-11-08 21:22           ` Suravee Suthikulpanit
2013-11-08 14:40             ` Borislav Petkov
2013-10-31 16:49     ` Oleg Nesterov
2013-11-08 19:41   ` Frederic Weisbecker
2013-11-09 15:11     ` Oleg Nesterov
2013-11-09 15:32       ` Frederic Weisbecker
2013-11-09 15:54         ` Oleg Nesterov
2013-11-11 15:44           ` Frederic Weisbecker
2013-11-11 17:51             ` Oleg Nesterov
2013-12-02 23:12               ` Frederic Weisbecker
2013-12-04 13:57                 ` Oleg Nesterov
2013-12-10 14:43                   ` Frederic Weisbecker
2013-12-10 14:52                   ` Frederic Weisbecker
2013-12-10 15:23   ` Frederic Weisbecker
2013-12-10 16:19     ` Oleg Nesterov
2013-12-10 16:30       ` Frederic Weisbecker
2013-12-11 12:05     ` Suravee Suthikulanit
2013-10-02 16:11 ` [PATCH 2/3] perf tools: allow user to specify hardware breakpoint bp_len suravee.suthikulpanit
2013-12-10 15:25   ` Frederic Weisbecker
2013-12-10 16:22     ` Oleg Nesterov
2013-12-10 16:26       ` Frederic Weisbecker
2013-10-02 16:11 ` [PATCH 3/3] perf tools: add hardware breakpoint bp_len test cases suravee.suthikulpanit
2013-10-02 16:15 ` [PATCH V5 0/3] perf/x86/amd: AMD Family 16h Data Breakpoint Extensions Oleg Nesterov
2013-10-02 16:54   ` Suravee Suthikulpanit
2013-10-31  9:43 ` Frederic Weisbecker [this message]

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=20131031094322.GD2253@localhost.localdomain \
    --to=fweisbec@gmail.com \
    --cc=a.p.zijlstra@chello.nl \
    --cc=acme@ghostprotocols.net \
    --cc=hpa@zytor.com \
    --cc=jacob.w.shin@gmail.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@kernel.org \
    --cc=mingo@redhat.com \
    --cc=oleg@redhat.com \
    --cc=sherry.hurwitz@amd.com \
    --cc=suravee.suthikulpanit@amd.com \
    --cc=tgl@domain.invalid \
    /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.