PERFORCE change 112554 for review

John Baldwin jhb at freebsd.org
Fri Jan 5 11:28:07 PST 2007


On Friday 05 January 2007 14:01, Paolo Pisati wrote:
> http://perforce.freebsd.org/chv.cgi?CH=112554
> 
> Change 112554 by piso at piso_newluxor on 2007/01/05 19:00:07
> 
> 	Enable the irq line just after the filter claimed the interrupt.

More likely is that it shouldnt' disable the IRQ line except in the 
disable_eoi_source callback.

> Affected files ...
> 
> .. //depot/projects/soc2006/intr_filter/powerpc/powerpc/intr_machdep.c#19 
edit
> 
> Differences ...
> 
> ==== //depot/projects/soc2006/intr_filter/powerpc/powerpc/intr_machdep.c#19 
(text+ko) ====
> 
> @@ -262,6 +262,15 @@
>  	}
>  }
>  
> +static void
> +intr_eoi_src(void *arg)
> +{
> +	uintptr_t nb;
> +
> +	nb = (uintptr_t)arg;
> +	irq_enable(nb);
> +}
> +
>  void
>  intr_handle(u_int irq)
>  {
> @@ -280,13 +289,12 @@
>  	ie = i->event;
>  	KASSERT(ie != NULL, ("%s: interrupt without an event", __func__));
>  
> -	res = handle_intr(ie, NULL, intr_eoi_src_stub, 
> -	    intr_disab_eoi_src_stub, NULL);
> +	res = handle_intr(ie, NULL, intr_eoi_src, 
> +	    intr_disab_eoi_src_stub, (void *)irq);
>  	switch(res) {
>  	case 0:
> -		break;
> +		/* FALLTHROUGH */
>  	case ECHILD:
> -		irq_enable(irq);
>  		break;
>  	case EINVAL:
>  		stray_int(irq);
> 

-- 
John Baldwin


More information about the p4-projects mailing list