[lkml]   [2009]   [Jul]   [24]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
SubjectRe: [RFC][PATCH 5/5] perfcounter: Add support for kernel hardware breakpoints
2009/7/23 Peter Zijlstra <>:
> On Mon, 2009-07-20 at 13:08 -0400, Frederic Weisbecker wrote:
>> This adds the support for kernel hardware breakpoints in perfcounter.
>> It is added as a new type of software counter and can be defined by
>> using the counter number 5 and by passsing the address of the
>> breakpoint to set through the config attribute.
> Is there a limit to these hardware breakpoints? If so, the software
> counter model is not sufficient, since we assume we can always schedule
> all software counters. However if you were to add more counters than you
> have hardware breakpoints you're hosed.

Hmm, indeed. But this patch handles this case:

+static const struct pmu *bp_perf_counter_init(struct perf_counter *counter)
+ if (hw_breakpoint_perf_init((unsigned long)counter->attr.config))
+ return NULL;

IIRC, hw_breakpoint_perf_init() calls register_kernel_breakpoint() which in turn
returns -ENOSPC if we haven't any breakpoint room left.

It seems we can only set 4 breakpoints simultaneously in x86, or
something close to that.

 \ /
  Last update: 2009-07-24 16:05    [W:0.142 / U:3.816 seconds]
©2003-2018 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site