[Patch 5/5] PPC64-HWBKPT: Discard extraneous interrupt due to accesses outside symbol length

Paul Mackerras paulus at samba.org
Thu Jun 10 22:40:24 EST 2010


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.


More information about the Linuxppc-dev mailing list