On Wed, Jun 09, 2010 at 03:55:59PM +0530, K.Prasad wrote: > + if (!((bp->attr.bp_addr <= dar) && > + (dar <= (bp->attr.bp_addr + bp->attr.bp_len)))) { > + /* > + * This exception is triggered not because of a memory access > + * on the monitored variable but in the double-word address > + * range in which it is contained. We will consume this > + * exception, considering it as 'noise'. > + */ > + info->extraneous_interrupt = true; > + }
Ummm, don't you need to add "else info->extraneous_interrupt = false;" here? I don't see anywhere that you ever clear it otherwise. Also, I think you need to do the "if (!info->extraneous_interrupt)" check around the call to perf_bp_event() later on in hw_breakpoint_handler() as well as around the call in single_step_dabr_instruction(). Paul. _______________________________________________ Linuxppc-dev mailing list Linuxppc-dev@lists.ozlabs.org https://lists.ozlabs.org/listinfo/linuxppc-dev