summaryrefslogtreecommitdiffstats
path: root/sys/dev/fxp
diff options
context:
space:
mode:
authorjhb <jhb@FreeBSD.org>2003-07-11 20:49:36 +0000
committerjhb <jhb@FreeBSD.org>2003-07-11 20:49:36 +0000
commit2e87863b0449adbce4a754c613d9816d4c4065bf (patch)
tree321bf9ba8ec24a82a3730b9d4f1b4920e137ee7c /sys/dev/fxp
parent7b5949381aa30cdb48c8a362d34128ed1bfc5eca (diff)
downloadFreeBSD-src-2e87863b0449adbce4a754c613d9816d4c4065bf.zip
FreeBSD-src-2e87863b0449adbce4a754c613d9816d4c4065bf.tar.gz
Unlock the fxp driver lock before calling fxp_poll() to avoid recursing on
the lock when using DEVICE_POLLING. Tested by: Robin P. Blanchard <Robin.Blanchard@gactr.uga.edu> Reviewed by: njl
Diffstat (limited to 'sys/dev/fxp')
-rw-r--r--sys/dev/fxp/if_fxp.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/sys/dev/fxp/if_fxp.c b/sys/dev/fxp/if_fxp.c
index 3026662..b894b37 100644
--- a/sys/dev/fxp/if_fxp.c
+++ b/sys/dev/fxp/if_fxp.c
@@ -1550,8 +1550,8 @@ fxp_intr(void *xsc)
if (ether_poll_register(fxp_poll, ifp)) {
/* disable interrupts */
CSR_WRITE_1(sc, FXP_CSR_SCB_INTRCNTL, FXP_SCB_INTR_DISABLE);
- fxp_poll(ifp, 0, 1);
FXP_UNLOCK(sc);
+ fxp_poll(ifp, 0, 1);
return;
}
#endif
OpenPOWER on IntegriCloud