svn commit: r195989 - head/sys/dev/alc
Kevin Lo
kevlo at FreeBSD.org
Fri Jul 31 09:57:43 UTC 2009
Author: kevlo
Date: Fri Jul 31 09:57:42 2009
New Revision: 195989
URL: http://svn.freebsd.org/changeset/base/195989
Log:
Free allocated Rx ring dma memory/tags.
Reviewed by: yongari@
Approved by: re (kib)
Modified:
head/sys/dev/alc/if_alc.c
Modified: head/sys/dev/alc/if_alc.c
==============================================================================
--- head/sys/dev/alc/if_alc.c Fri Jul 31 08:37:27 2009 (r195988)
+++ head/sys/dev/alc/if_alc.c Fri Jul 31 09:57:42 2009 (r195989)
@@ -1501,6 +1501,21 @@ alc_dma_free(struct alc_softc *sc)
bus_dma_tag_destroy(sc->alc_cdata.alc_tx_ring_tag);
sc->alc_cdata.alc_tx_ring_tag = NULL;
}
+ /* Rx ring. */
+ if (sc->alc_cdata.alc_rx_ring_tag != NULL) {
+ if (sc->alc_cdata.alc_rx_ring_map != NULL)
+ bus_dmamap_unload(sc->alc_cdata.alc_rx_ring_tag,
+ sc->alc_cdata.alc_rx_ring_map);
+ if (sc->alc_cdata.alc_rx_ring_map != NULL &&
+ sc->alc_rdata.alc_rx_ring != NULL)
+ bus_dmamem_free(sc->alc_cdata.alc_rx_ring_tag,
+ sc->alc_rdata.alc_rx_ring,
+ sc->alc_cdata.alc_rx_ring_map);
+ sc->alc_rdata.alc_rx_ring = NULL;
+ sc->alc_cdata.alc_rx_ring_map = NULL;
+ bus_dma_tag_destroy(sc->alc_cdata.alc_rx_ring_tag);
+ sc->alc_cdata.alc_rx_ring_tag = NULL;
+ }
/* Rx return ring. */
if (sc->alc_cdata.alc_rr_ring_tag != NULL) {
if (sc->alc_cdata.alc_rr_ring_map != NULL)
More information about the svn-src-all
mailing list