PERFORCE change 120737 for review

Paolo Pisati piso at FreeBSD.org
Fri Jun 1 22:15:26 UTC 2007


http://perforce.freebsd.org/chv.cgi?CH=120737

Change 120737 by piso at piso_newluxor on 2007/06/01 22:14:38

	-correctly schedule the ithread in case there's no filter and mask
	the src in the meantime
	-correctly clear the interrupt src after the filter or th ithread ran 

Affected files ...

.. //depot/projects/soc2006/intr_filter/sparc64/sbus/sbus.c#13 edit

Differences ...

==== //depot/projects/soc2006/intr_filter/sparc64/sbus/sbus.c#13 (text+ko) ====

@@ -635,11 +635,11 @@
 	int res;
 
 	scl = (struct sbus_clr *)arg;
-	if (scl->scl_handler != NULL)
+	if (scl->scl_handler != NULL) {
 		res = scl->scl_filter(scl->scl_arg);
-	else 
-		res = FILTER_HANDLED | FILTER_SCHEDULE_THREAD;
-	SYSIO_WRITE8(scl->scl_sc, scl->scl_clr, 0);
+		SYSIO_WRITE8(scl->scl_sc, scl->scl_clr, 0);
+	} else 
+		res = FILTER_SCHEDULE_THREAD;	
 	return (res);
 }
 
@@ -650,6 +650,8 @@
 
 	scl = (struct sbus_clr *)arg;
 	scl->scl_handler(scl->scl_arg);
+	if (scl->scl_handler == NULL)
+		SYSIO_WRITE8(scl->scl_sc, scl->scl_clr, 0);
 }
 
 static int


More information about the p4-projects mailing list