summaryrefslogtreecommitdiffstats
path: root/sys/dev/sf
diff options
context:
space:
mode:
authoryongari <yongari@FreeBSD.org>2012-02-23 05:25:14 +0000
committeryongari <yongari@FreeBSD.org>2012-02-23 05:25:14 +0000
commita9c93ff5ee961bc4aa16fd869548143f61d8654a (patch)
tree4b12ab2ea0ce5c16b012a1e8f3228f1c8a29da5e /sys/dev/sf
parentea1cb71b9d4b85c098a800fae8a11c279a27d3ac (diff)
downloadFreeBSD-src-a9c93ff5ee961bc4aa16fd869548143f61d8654a.zip
FreeBSD-src-a9c93ff5ee961bc4aa16fd869548143f61d8654a.tar.gz
No need to reprogram hardware RX filter when driver is not running.
Diffstat (limited to 'sys/dev/sf')
-rw-r--r--sys/dev/sf/if_sf.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/sys/dev/sf/if_sf.c b/sys/dev/sf/if_sf.c
index 47294ff..f594854 100644
--- a/sys/dev/sf/if_sf.c
+++ b/sys/dev/sf/if_sf.c
@@ -600,7 +600,8 @@ sf_ioctl(struct ifnet *ifp, u_long command, caddr_t data)
case SIOCADDMULTI:
case SIOCDELMULTI:
SF_LOCK(sc);
- sf_rxfilter(sc);
+ if ((ifp->if_drv_flags & IFF_DRV_RUNNING) != 0)
+ sf_rxfilter(sc);
SF_UNLOCK(sc);
break;
case SIOCGIFMEDIA:
OpenPOWER on IntegriCloud