diff options
author | jhb <jhb@FreeBSD.org> | 2014-06-10 20:25:45 +0000 |
---|---|---|
committer | jhb <jhb@FreeBSD.org> | 2014-06-10 20:25:45 +0000 |
commit | 02e632b71287ac53801c62c26a1c00926fca8e2d (patch) | |
tree | fce070802b2d12919f979d51576d5aad6077a6c2 /sys/dev/hifn | |
parent | e250a91c1da4cfd9eb0dab8e0aac2bc6fc7a8176 (diff) | |
download | FreeBSD-src-02e632b71287ac53801c62c26a1c00926fca8e2d.zip FreeBSD-src-02e632b71287ac53801c62c26a1c00926fca8e2d.tar.gz |
Don't destroy bus_dma maps created by bus_dmamem_alloc(). In some cases,
don't create a map before calling bus_dmamem_alloc() (such maps were
leaked). It is believed that the extra destroy of the map was generally
harmless since bus_dmamem_alloc() often uses special maps for which
bus_dmamap_destroy() is a no-op (e.g. on x86).
Reviewed by: scottl
Diffstat (limited to 'sys/dev/hifn')
-rw-r--r-- | sys/dev/hifn/hifn7751.c | 3 |
1 files changed, 0 insertions, 3 deletions
diff --git a/sys/dev/hifn/hifn7751.c b/sys/dev/hifn/hifn7751.c index 8954242..e9d47a1 100644 --- a/sys/dev/hifn/hifn7751.c +++ b/sys/dev/hifn/hifn7751.c @@ -463,7 +463,6 @@ hifn_attach(device_t dev) BUS_DMA_NOWAIT)) { device_printf(dev, "cannot load dma map\n"); bus_dmamem_free(sc->sc_dmat, kva, sc->sc_dmamap); - bus_dmamap_destroy(sc->sc_dmat, sc->sc_dmamap); bus_dma_tag_destroy(sc->sc_dmat); goto fail_io1; } @@ -603,7 +602,6 @@ fail_intr2: fail_mem: bus_dmamap_unload(sc->sc_dmat, sc->sc_dmamap); bus_dmamem_free(sc->sc_dmat, sc->sc_dma, sc->sc_dmamap); - bus_dmamap_destroy(sc->sc_dmat, sc->sc_dmamap); bus_dma_tag_destroy(sc->sc_dmat); /* Turn off DMA polling */ @@ -653,7 +651,6 @@ hifn_detach(device_t dev) bus_dmamap_unload(sc->sc_dmat, sc->sc_dmamap); bus_dmamem_free(sc->sc_dmat, sc->sc_dma, sc->sc_dmamap); - bus_dmamap_destroy(sc->sc_dmat, sc->sc_dmamap); bus_dma_tag_destroy(sc->sc_dmat); bus_release_resource(dev, SYS_RES_MEMORY, HIFN_BAR1, sc->sc_bar1res); |