aboutsummaryrefslogtreecommitdiff
path: root/sys/dev/dc
diff options
context:
space:
mode:
authorPyun YongHyeon <yongari@FreeBSD.org>2011-02-18 23:08:05 +0000
committerPyun YongHyeon <yongari@FreeBSD.org>2011-02-18 23:08:05 +0000
commit24507bc168fb85d8180f2890eff853522f449374 (patch)
treef112995764a337ee9f1e48038010ae3b2b16c7aa /sys/dev/dc
parent52c43a473e78d45810725ada92bf20d574f1f66a (diff)
Notes
Diffstat (limited to 'sys/dev/dc')
-rw-r--r--sys/dev/dc/if_dc.c6
1 files changed, 2 insertions, 4 deletions
diff --git a/sys/dev/dc/if_dc.c b/sys/dev/dc/if_dc.c
index 0bb173bcde01..52e4d71d40bf 100644
--- a/sys/dev/dc/if_dc.c
+++ b/sys/dev/dc/if_dc.c
@@ -1334,7 +1334,6 @@ dc_setfilt_xircom(struct dc_softc *sc)
DC_SETBIT(sc, DC_NETCFG, DC_NETCFG_TX_ON);
DC_SETBIT(sc, DC_NETCFG, DC_NETCFG_RX_ON);
- ifp->if_drv_flags |= IFF_DRV_RUNNING;
sframe->dc_status = htole32(DC_TXSTAT_OWN);
CSR_WRITE_4(sc, DC_TXSTART, 0xFFFFFFFF);
@@ -3696,14 +3695,13 @@ dc_ioctl(struct ifnet *ifp, u_long command, caddr_t data)
}
sc->dc_if_flags = ifp->if_flags;
DC_UNLOCK(sc);
- error = 0;
break;
case SIOCADDMULTI:
case SIOCDELMULTI:
DC_LOCK(sc);
- dc_setfilt(sc);
+ if (ifp->if_drv_flags & IFF_DRV_RUNNING)
+ dc_setfilt(sc);
DC_UNLOCK(sc);
- error = 0;
break;
case SIOCGIFMEDIA:
case SIOCSIFMEDIA: