summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--sys/net/if_gif.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/sys/net/if_gif.c b/sys/net/if_gif.c
index f8af910..68031cb 100644
--- a/sys/net/if_gif.c
+++ b/sys/net/if_gif.c
@@ -401,6 +401,7 @@ gif_ioctl(ifp, cmd, data)
struct sockaddr *dst, *src;
struct sockaddr *sa;
int i;
+ int s;
struct gif_softc *sc2;
switch (cmd) {
@@ -529,8 +530,10 @@ gif_ioctl(ifp, cmd, data)
bcopy((caddr_t)dst, (caddr_t)sa, size);
sc->gif_pdst = sa;
- ifp->if_flags |= IFF_UP;
- if_up(ifp); /* send up RTM_IFINFO */
+ ifp->if_flags |= IFF_RUNNING;
+ s = splimp();
+ if_up(ifp); /* mark interface UP and send up RTM_IFINFO */
+ splx(s);
error = 0;
break;
OpenPOWER on IntegriCloud