svn commit: r227098 - head/sys/dev/ti
Pyun YongHyeon
yongari at FreeBSD.org
Fri Nov 4 23:09:57 UTC 2011
Author: yongari
Date: Fri Nov 4 23:09:57 2011
New Revision: 227098
URL: http://svn.freebsd.org/changeset/base/227098
Log:
Because ti(4) drops a driver lock in RX handler, check whether
driver is still running before re-enabling interrupts.
Modified:
head/sys/dev/ti/if_ti.c
Modified: head/sys/dev/ti/if_ti.c
==============================================================================
--- head/sys/dev/ti/if_ti.c Fri Nov 4 22:58:34 2011 (r227097)
+++ head/sys/dev/ti/if_ti.c Fri Nov 4 23:09:57 2011 (r227098)
@@ -2856,12 +2856,12 @@ ti_intr(void *xsc)
ti_handle_events(sc);
- /* Re-enable interrupts. */
- CSR_WRITE_4(sc, TI_MB_HOSTINTR, 0);
-
if (ifp->if_drv_flags & IFF_DRV_RUNNING &&
- ifp->if_snd.ifq_head != NULL)
+ ifp->if_snd.ifq_head != NULL) {
+ /* Re-enable interrupts. */
+ CSR_WRITE_4(sc, TI_MB_HOSTINTR, 0);
ti_start_locked(ifp);
+ }
TI_UNLOCK(sc);
}
More information about the svn-src-head
mailing list