diff options
author | Brad Smith <brad@cvs.openbsd.org> | 2005-10-21 02:03:17 +0000 |
---|---|---|
committer | Brad Smith <brad@cvs.openbsd.org> | 2005-10-21 02:03:17 +0000 |
commit | a60ddccc7d80e0d2894402c2c05260464df51d7e (patch) | |
tree | 9ea8d4de39cd4ae3537698b4d4bc25ad44c42fe2 /sys/dev/pci/if_em.c | |
parent | 62f4e944519d61355c735070d0b3088969e02926 (diff) |
In em_process_receive_interrupts() cycle check IFF_RUNNING flag.
Diffstat (limited to 'sys/dev/pci/if_em.c')
-rw-r--r-- | sys/dev/pci/if_em.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/sys/dev/pci/if_em.c b/sys/dev/pci/if_em.c index 45dd16d1d0e..30e4fcd1eb3 100644 --- a/sys/dev/pci/if_em.c +++ b/sys/dev/pci/if_em.c @@ -31,7 +31,7 @@ POSSIBILITY OF SUCH DAMAGE. ***************************************************************************/ -/* $OpenBSD: if_em.c,v 1.78 2005/10/16 17:32:37 brad Exp $ */ +/* $OpenBSD: if_em.c,v 1.79 2005/10/21 02:03:16 brad Exp $ */ /* $FreeBSD: if_em.c,v 1.46 2004/09/29 18:28:28 mlaier Exp $ */ #include <dev/pci/if_em.h> @@ -2319,7 +2319,9 @@ em_process_receive_interrupts(struct em_softc *sc, int count) return; } - while ((current_desc->status & E1000_RXD_STAT_DD) && (count != 0)) { + while ((current_desc->status & E1000_RXD_STAT_DD) && + (count != 0) && + (ifp->if_flags & IFF_RUNNING)) { struct mbuf *m = NULL; mp = sc->rx_buffer_area[i].m_head; |