diff --git a/sys/dev/netif/sbsh/if_sbsh.c b/sys/dev/netif/sbsh/if_sbsh.c --- a/sys/dev/netif/sbsh/if_sbsh.c +++ b/sys/dev/netif/sbsh/if_sbsh.c @@ -402,10 +402,12 @@ __SYSCAP_NULLCRED); if (error) break; - if (ifp->if_flags & IFF_UP) - error = EBUSY; - - bzero(&cfg, sizeof(cfg)); + if (ifp->if_flags & IFF_UP) { + error = EBUSY; + break; + } + + bzero(&cfg, sizeof(cfg)); error = copyin((caddr_t)ifr->ifr_data, (caddr_t)&cfg, sizeof cfg);