summaryrefslogtreecommitdiffstats
path: root/sys/pci/if_rl.c
diff options
context:
space:
mode:
authorru <ru@FreeBSD.org>2005-10-13 21:11:20 +0000
committerru <ru@FreeBSD.org>2005-10-13 21:11:20 +0000
commitb9c7add838ccaace56cbb1d065e502e478f92d4e (patch)
tree42d971c6d541bfdfd3204acba1a4ae6004c37124 /sys/pci/if_rl.c
parent9d4f7296d4bd26d172e55a582c41d028d6dceb40 (diff)
downloadFreeBSD-src-b9c7add838ccaace56cbb1d065e502e478f92d4e.zip
FreeBSD-src-b9c7add838ccaace56cbb1d065e502e478f92d4e.tar.gz
In detach method, move if_free() after bus_teardown_intr().
Diffstat (limited to 'sys/pci/if_rl.c')
-rw-r--r--sys/pci/if_rl.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/sys/pci/if_rl.c b/sys/pci/if_rl.c
index eae31bc..acea56a 100644
--- a/sys/pci/if_rl.c
+++ b/sys/pci/if_rl.c
@@ -1019,8 +1019,6 @@ rl_detach(device_t dev)
#if 0
sc->suspended = 1;
#endif
- if (ifp)
- if_free(ifp);
if (sc->rl_miibus)
device_delete_child(dev, sc->rl_miibus);
bus_generic_detach(dev);
@@ -1032,6 +1030,9 @@ rl_detach(device_t dev)
if (sc->rl_res)
bus_release_resource(dev, RL_RES, RL_RID, sc->rl_res);
+ if (ifp)
+ if_free(ifp);
+
if (sc->rl_tag) {
bus_dmamap_unload(sc->rl_tag, sc->rl_cdata.rl_rx_dmamap);
bus_dmamem_free(sc->rl_tag, sc->rl_cdata.rl_rx_buf,
OpenPOWER on IntegriCloud