summaryrefslogtreecommitdiff
path: root/sys/arch
diff options
context:
space:
mode:
Diffstat (limited to 'sys/arch')
-rw-r--r--sys/arch/mac68k/dev/if_ae.c8
-rw-r--r--sys/arch/macppc/dev/if_bm.c8
-rw-r--r--sys/arch/mvme68k/dev/if_ie.c5
-rw-r--r--sys/arch/mvme88k/dev/if_ie.c5
-rw-r--r--sys/arch/sgi/dev/if_mec.c6
-rw-r--r--sys/arch/sparc/dev/be.c5
-rw-r--r--sys/arch/sparc/dev/hme.c5
-rw-r--r--sys/arch/sparc/dev/if_ie.c5
-rw-r--r--sys/arch/sparc/dev/qe.c4
-rw-r--r--sys/arch/vax/bi/if_ni.c5
-rw-r--r--sys/arch/vax/if/sgec.c5
11 files changed, 37 insertions, 24 deletions
diff --git a/sys/arch/mac68k/dev/if_ae.c b/sys/arch/mac68k/dev/if_ae.c
index ea7e5c93169..44f49213597 100644
--- a/sys/arch/mac68k/dev/if_ae.c
+++ b/sys/arch/mac68k/dev/if_ae.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: if_ae.c,v 1.24 2004/11/26 21:21:24 miod Exp $ */
+/* $OpenBSD: if_ae.c,v 1.25 2005/01/15 05:24:09 brad Exp $ */
/* $NetBSD: if_ae.c,v 1.62 1997/04/24 16:52:05 scottr Exp $ */
/*
@@ -831,8 +831,10 @@ aeioctl(ifp, cmd, data)
* Multicast list has changed; set the hardware filter
* accordingly.
*/
- aestop(sc); /* XXX for ds_setmcaf? */
- aeinit(sc);
+ if (ifp->if_flags & IFF_RUNNING) {
+ aestop(sc); /* XXX for ds_setmcaf? */
+ aeinit(sc);
+ }
error = 0;
}
break;
diff --git a/sys/arch/macppc/dev/if_bm.c b/sys/arch/macppc/dev/if_bm.c
index 214d9b77176..29650c10c6b 100644
--- a/sys/arch/macppc/dev/if_bm.c
+++ b/sys/arch/macppc/dev/if_bm.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: if_bm.c,v 1.16 2003/10/16 03:54:48 deraadt Exp $ */
+/* $OpenBSD: if_bm.c,v 1.17 2005/01/15 05:24:10 brad Exp $ */
/* $NetBSD: if_bm.c,v 1.1 1999/01/01 01:27:52 tsubai Exp $ */
/*-
@@ -896,8 +896,10 @@ bmac_ioctl(struct ifnet *ifp, u_long cmd, caddr_t data)
* Multicast list has changed; set the hardware filter
* accordingly.
*/
- bmac_init(sc);
- bmac_setladrf(sc);
+ if (ifp->if_flags & IFF_RUNNING) {
+ bmac_init(sc);
+ bmac_setladrf(sc);
+ }
error = 0;
}
break;
diff --git a/sys/arch/mvme68k/dev/if_ie.c b/sys/arch/mvme68k/dev/if_ie.c
index 58522049a5a..87cc07d8bd2 100644
--- a/sys/arch/mvme68k/dev/if_ie.c
+++ b/sys/arch/mvme68k/dev/if_ie.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: if_ie.c,v 1.27 2004/07/30 22:29:44 miod Exp $ */
+/* $OpenBSD: if_ie.c,v 1.28 2005/01/15 05:24:10 brad Exp $ */
/*-
* Copyright (c) 1999 Steve Murphree, Jr.
@@ -1897,7 +1897,8 @@ ieioctl(ifp, cmd, data)
* Multicast list has changed; set the hardware filter
* accordingly.
*/
- mc_reset(sc);
+ if (ifp->if_flags & IFF_RUNNING)
+ mc_reset(sc);
error = 0;
}
break;
diff --git a/sys/arch/mvme88k/dev/if_ie.c b/sys/arch/mvme88k/dev/if_ie.c
index 6651cbda9f1..51e24e79a7d 100644
--- a/sys/arch/mvme88k/dev/if_ie.c
+++ b/sys/arch/mvme88k/dev/if_ie.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: if_ie.c,v 1.31 2004/08/02 08:35:00 miod Exp $ */
+/* $OpenBSD: if_ie.c,v 1.32 2005/01/15 05:24:10 brad Exp $ */
/*-
* Copyright (c) 1998 Steve Murphree, Jr.
@@ -1871,7 +1871,8 @@ ieioctl(ifp, cmd, data)
* Multicast list has changed; set the hardware filter
* accordingly.
*/
- mc_reset(sc);
+ if (ifp->if_flags & IFF_RUNNING)
+ mc_reset(sc);
error = 0;
}
break;
diff --git a/sys/arch/sgi/dev/if_mec.c b/sys/arch/sgi/dev/if_mec.c
index 51300e86d2e..06c8bb1f734 100644
--- a/sys/arch/sgi/dev/if_mec.c
+++ b/sys/arch/sgi/dev/if_mec.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: if_mec.c,v 1.6 2004/09/29 17:57:35 pefo Exp $ */
+/* $OpenBSD: if_mec.c,v 1.7 2005/01/15 05:24:10 brad Exp $ */
/* $NetBSD: if_mec_mace.c,v 1.5 2004/08/01 06:36:36 tsutsui Exp $ */
/*
@@ -1095,12 +1095,14 @@ mec_ioctl(struct ifnet *ifp, u_long cmd, caddr_t data)
error = (cmd == SIOCADDMULTI) ?
ether_addmulti(ifr, &sc->sc_ac) :
ether_delmulti(ifr, &sc->sc_ac);
+
if (error == ENETRESET) {
/*
* Multicast list has changed; set the hardware
* filter accordingly.
*/
- mec_init(ifp);
+ if (ifp->if_flags & IFF_RUNNING)
+ mec_init(ifp);
error = 0;
}
break;
diff --git a/sys/arch/sparc/dev/be.c b/sys/arch/sparc/dev/be.c
index f9c87d423f1..5e14e6d2d9c 100644
--- a/sys/arch/sparc/dev/be.c
+++ b/sys/arch/sparc/dev/be.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: be.c,v 1.35 2004/09/29 07:35:11 miod Exp $ */
+/* $OpenBSD: be.c,v 1.36 2005/01/15 05:24:10 brad Exp $ */
/*
* Copyright (c) 1998 Theo de Raadt and Jason L. Wright.
@@ -644,7 +644,8 @@ beioctl(ifp, cmd, data)
* Multicast list has changed; set the hardware filter
* accordingly.
*/
- be_mcreset(sc);
+ if (ifp->if_flags & IFF_RUNNING)
+ be_mcreset(sc);
error = 0;
}
break;
diff --git a/sys/arch/sparc/dev/hme.c b/sys/arch/sparc/dev/hme.c
index 40727d19d93..c54dd3c0cdb 100644
--- a/sys/arch/sparc/dev/hme.c
+++ b/sys/arch/sparc/dev/hme.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: hme.c,v 1.45 2004/09/29 07:35:11 miod Exp $ */
+/* $OpenBSD: hme.c,v 1.46 2005/01/15 05:24:10 brad Exp $ */
/*
* Copyright (c) 1998 Jason L. Wright (jason@thought.net)
@@ -471,7 +471,8 @@ hmeioctl(ifp, cmd, data)
* Multicast list has changed; set the hardware filter
* accordingly.
*/
- hme_mcreset(sc);
+ if (ifp->if_flags & IFF_RUNNING)
+ hme_mcreset(sc);
error = 0;
}
break;
diff --git a/sys/arch/sparc/dev/if_ie.c b/sys/arch/sparc/dev/if_ie.c
index f42747a0f6e..c6e15657f30 100644
--- a/sys/arch/sparc/dev/if_ie.c
+++ b/sys/arch/sparc/dev/if_ie.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: if_ie.c,v 1.28 2004/09/29 07:35:11 miod Exp $ */
+/* $OpenBSD: if_ie.c,v 1.29 2005/01/15 05:24:10 brad Exp $ */
/* $NetBSD: if_ie.c,v 1.33 1997/07/29 17:55:38 fair Exp $ */
/*-
@@ -2038,7 +2038,8 @@ ieioctl(ifp, cmd, data)
* Multicast list has changed; set the hardware filter
* accordingly.
*/
- mc_reset(sc);
+ if (ifp->if_flags & IFF_RUNNING)
+ mc_reset(sc);
error = 0;
}
break;
diff --git a/sys/arch/sparc/dev/qe.c b/sys/arch/sparc/dev/qe.c
index 0263de1e758..40993385e1d 100644
--- a/sys/arch/sparc/dev/qe.c
+++ b/sys/arch/sparc/dev/qe.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: qe.c,v 1.25 2004/09/29 07:35:11 miod Exp $ */
+/* $OpenBSD: qe.c,v 1.26 2005/01/15 05:24:10 brad Exp $ */
/*
* Copyright (c) 1998, 2000 Jason L. Wright.
@@ -663,7 +663,7 @@ qeioctl(ifp, cmd, data)
* Multicast list has changed; set the hardware filter
* accordingly.
*/
- if (ifp->if_flags & IFF_UP)
+ if (ifp->if_flags & IFF_RUNNING)
qeinit(sc);
error = 0;
}
diff --git a/sys/arch/vax/bi/if_ni.c b/sys/arch/vax/bi/if_ni.c
index 34bdafbd4b8..305852aa8b6 100644
--- a/sys/arch/vax/bi/if_ni.c
+++ b/sys/arch/vax/bi/if_ni.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: if_ni.c,v 1.5 2004/07/07 23:10:43 deraadt Exp $ */
+/* $OpenBSD: if_ni.c,v 1.6 2005/01/15 05:24:10 brad Exp $ */
/* $NetBSD: if_ni.c,v 1.15 2002/05/22 16:03:14 wiz Exp $ */
/*
* Copyright (c) 2000 Ludd, University of Lule}, Sweden. All rights reserved.
@@ -763,7 +763,8 @@ niioctl(ifp, cmd, data)
* Multicast list has changed; set the hardware filter
* accordingly.
*/
- ni_setup(sc);
+ if (ifp->if_flags & IFF_RUNNING)
+ ni_setup(sc);
error = 0;
}
break;
diff --git a/sys/arch/vax/if/sgec.c b/sys/arch/vax/if/sgec.c
index 7d4c1d7ec97..d52aee2092f 100644
--- a/sys/arch/vax/if/sgec.c
+++ b/sys/arch/vax/if/sgec.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: sgec.c,v 1.7 2004/07/07 23:10:45 deraadt Exp $ */
+/* $OpenBSD: sgec.c,v 1.8 2005/01/15 05:24:10 brad Exp $ */
/* $NetBSD: sgec.c,v 1.5 2000/06/04 02:14:14 matt Exp $ */
/*
* Copyright (c) 1999 Ludd, University of Lule}, Sweden. All rights reserved.
@@ -552,7 +552,8 @@ zeioctl(ifp, cmd, data)
* Multicast list has changed; set the hardware filter
* accordingly.
*/
- ze_setup(sc);
+ if (ifp->if_flags & IFF_RUNNING)
+ ze_setup(sc);
error = 0;
}
break;