diff options
Diffstat (limited to 'sys/arch')
-rw-r--r-- | sys/arch/mac68k/dev/if_ae.c | 8 | ||||
-rw-r--r-- | sys/arch/macppc/dev/if_bm.c | 8 | ||||
-rw-r--r-- | sys/arch/mvme68k/dev/if_ie.c | 5 | ||||
-rw-r--r-- | sys/arch/mvme88k/dev/if_ie.c | 5 | ||||
-rw-r--r-- | sys/arch/sgi/dev/if_mec.c | 6 | ||||
-rw-r--r-- | sys/arch/sparc/dev/be.c | 5 | ||||
-rw-r--r-- | sys/arch/sparc/dev/hme.c | 5 | ||||
-rw-r--r-- | sys/arch/sparc/dev/if_ie.c | 5 | ||||
-rw-r--r-- | sys/arch/sparc/dev/qe.c | 4 | ||||
-rw-r--r-- | sys/arch/vax/bi/if_ni.c | 5 | ||||
-rw-r--r-- | sys/arch/vax/if/sgec.c | 5 |
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; |