Re: [PATCH V2 1/4] perf: Add hardware breakpoint address mask

From: Oleg Nesterov
Date: Thu Apr 25 2013 - 11:13:50 EST


On 04/25, Frederic Weisbecker wrote:
>
> 2013/4/23 Jacob Shin <jacob.shin@xxxxxxx>:
> > @@ -286,7 +286,10 @@ struct perf_event_attr {
> > __u64 config1; /* extension of config */
> > };
> > union {
> > - __u64 bp_len;
> > + struct {
> > + __u32 bp_len;
> > + __u32 bp_addr_mask;
> > + };
>
> Do we need len and mask to work at the same time? I can't think of a
> situation when len and mask mix up together in a useful way to define
> a range.

And it would be nice (I think) if we could simply turn bp_len into
bp_mask. It is already the mask actually, bp_addr should be aligned.

But I do not see how we can do this, so I guess we need another field.

Well. Another option is to extend bp_len. Fortunately HW_BREAKPOINT_LEN_*
match the length, so we can simply allow any 2^n length and amd.c can
translate it into the mask.

Of course, this doesn't allow to use, say, mask=0xF0. But perhaps this
is not really useful?

I dunno. I leave this to you and Jacob ;)

Oleg.

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/