Commit-ID: aa59a48596d8358a908bfb458300b5625cd47785 Gitweb: http://git.kernel.org/tip/aa59a48596d8358a908bfb458300b5625cd47785 Author: Frederic Weisbecker <fweisbec@xxxxxxxxx> AuthorDate: Thu, 24 Jun 2010 21:36:19 +0200 Committer: Frederic Weisbecker <fweisbec@xxxxxxxxx> CommitDate: Thu, 24 Jun 2010 23:35:49 +0200 perf: Don't use 4 bytes as a default instruction breakpoint length 4 bytes is fine as a default access for data breakpoints. But instruction breakpoints should take the native pointer length, otherwise we get a -EINVAL in x86-64. Signed-off-by: Frederic Weisbecker <fweisbec@xxxxxxxxx> Cc: Will Deacon <will.deacon@xxxxxxx> Cc: Prasad <prasad@xxxxxxxxxxxxxxxxxx> Cc: Mahesh Salgaonkar <mahesh@xxxxxxxxxxxxxxxxxx> Cc: Ingo Molnar <mingo@xxxxxxx> Cc: Peter Zijlstra <a.p.zijlstra@xxxxxxxxx> Cc: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx> Cc: Paul Mackerras <paulus@xxxxxxxxx> Cc: Jason Wessel <jason.wessel@xxxxxxxxxxxxx> --- tools/perf/util/parse-events.c | 11 +++++++++-- 1 files changed, 9 insertions(+), 2 deletions(-) diff --git a/tools/perf/util/parse-events.c b/tools/perf/util/parse-events.c index 9bf0f40..4af5bd5 100644 --- a/tools/perf/util/parse-events.c +++ b/tools/perf/util/parse-events.c @@ -602,8 +602,15 @@ parse_breakpoint_event(const char **strp, struct perf_event_attr *attr) return EVT_FAILED; } - /* We should find a nice way to override the access type */ - attr->bp_len = HW_BREAKPOINT_LEN_4; + /* + * We should find a nice way to override the access length + * Provide some defaults for now + */ + if (attr->bp_type == HW_BREAKPOINT_X) + attr->bp_len = sizeof(long); + else + attr->bp_len = HW_BREAKPOINT_LEN_4; + attr->type = PERF_TYPE_BREAKPOINT; return EVT_HANDLED; -- To unsubscribe from this list: send the line "unsubscribe linux-tip-commits" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html
![]() |