diff options
author | brooks <brooks@FreeBSD.org> | 2005-06-12 15:33:45 +0000 |
---|---|---|
committer | brooks <brooks@FreeBSD.org> | 2005-06-12 15:33:45 +0000 |
commit | 6a494e047b5d92a8cad8d926be1a67884a1658ea (patch) | |
tree | 5b71f03f1197a91e0057ff8103d801f4e0e417e4 /sys/dev/gem/if_gem.c | |
parent | 1e38a48400a5798ecc29c2b7edf9d0a83f08a5f5 (diff) | |
download | FreeBSD-src-6a494e047b5d92a8cad8d926be1a67884a1658ea.zip FreeBSD-src-6a494e047b5d92a8cad8d926be1a67884a1658ea.tar.gz |
Stop the interface before detaching and freeing it, rather than after.
Reported by: marius
Diffstat (limited to 'sys/dev/gem/if_gem.c')
-rw-r--r-- | sys/dev/gem/if_gem.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/sys/dev/gem/if_gem.c b/sys/dev/gem/if_gem.c index 08a8b98..80db1ce 100644 --- a/sys/dev/gem/if_gem.c +++ b/sys/dev/gem/if_gem.c @@ -363,9 +363,9 @@ gem_detach(sc) struct ifnet *ifp = sc->sc_ifp; int i; + gem_stop(ifp, 1); ether_ifdetach(ifp); if_free(ifp); - gem_stop(ifp, 1); device_delete_child(sc->sc_dev, sc->sc_miibus); for (i = 0; i < GEM_NRXDESC; i++) { |