diff options
author | ru <ru@FreeBSD.org> | 2005-10-13 21:11:20 +0000 |
---|---|---|
committer | ru <ru@FreeBSD.org> | 2005-10-13 21:11:20 +0000 |
commit | b9c7add838ccaace56cbb1d065e502e478f92d4e (patch) | |
tree | 42d971c6d541bfdfd3204acba1a4ae6004c37124 /sys/pci/if_rl.c | |
parent | 9d4f7296d4bd26d172e55a582c41d028d6dceb40 (diff) | |
download | FreeBSD-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.c | 5 |
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, |