Messages in this thread | | | Date | Mon, 22 Apr 2013 16:57:44 -0500 | From | Jacob Shin <> | Subject | Re: [PATCH 1/5] perf: Add hardware breakpoint address mask |
| |
On Mon, Apr 22, 2013 at 04:37:15PM -0500, Jacob Shin wrote: > On Sun, Apr 21, 2013 at 07:02:02PM +0200, Oleg Nesterov wrote: > > On 04/20, Jacob Shin wrote: > > > > > > On Sat, Apr 20, 2013 at 06:53:34PM +0200, Oleg Nesterov wrote: > > > > > > > > And does attr.bp_len "contribute" to the mask? > > > > > > > > I mean, if bp_len == X86_BREAKPOINT_LEN_8, does this mean that > > > > bp_bp_addr_mask and (bp_bp_addr_mask | 7) have the same effect? > > > > > > Yes it has the same effect. > > > > OK, thanks... > > > > So this is the "natural" extension. Given that currently bp_addr > > should be aligned, bp_len could be already bp_mask but I guess it > > is too late to change this, so we need another field. > > > > Hmm. Perhaps arch_has_hw_breakpoint_addr_mask(void) should be turned > > into arch_validate_hw_breakpoint_addr_mask(bp) which should also > > check that (bp_addr & bp_addr_mask) == 0. But I won't insist. > > Yes I can do that .. in that case should the Kconfig > CONFIG_HAVE_HW_BREAKPOINT_ADDR_MASK go away, and in every non-x86 > hw_breakpoint.c do: > > bool arch_validate_hw_breakpoint_addr_mask(struct perf_event *bp) > { > return false;
Sorry, of course what I meant was,
return bp->attr.bp_addr_mask == 0; > } > > ? > > Or keep CONFIG_HAVE_HW_BREAKPOINT_ADDR_MASK and in > include/linux/hw_breakpoint.h do: > > #ifndef CONFIG_HAVE_HW_BREAKPOINT_ADDR_MASK > static inline bool arch_validate_hw_breakpoint_addr_mask(struct perf_event *bp) > { > return falase;
here too.
> } > #endif > > ? > > Thanks,
Just reading your other email, you said a __weak function would suffice. So I'll do that .. sorry for answering my own question.
I'll send out a revised patchset sometime later tonight ..
Thanks again!
| |