summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorcognet <cognet@FreeBSD.org>2010-01-15 12:39:48 +0000
committercognet <cognet@FreeBSD.org>2010-01-15 12:39:48 +0000
commit9d04743537d04ee6871e3c3f0cdf9bfb09d65cef (patch)
treef89627ab899dc46d1502d465dd46afb87c9d75c1
parentc67fa34ee5c440057e9c69882e34f7b0175c0d65 (diff)
downloadFreeBSD-src-9d04743537d04ee6871e3c3f0cdf9bfb09d65cef.zip
FreeBSD-src-9d04743537d04ee6871e3c3f0cdf9bfb09d65cef.tar.gz
Do not free the dmamap if it is still busy.
Submitted by: Mark Tinguely MFC after: 3 days
-rw-r--r--sys/arm/arm/busdma_machdep.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/sys/arm/arm/busdma_machdep.c b/sys/arm/arm/busdma_machdep.c
index cf4873f..7080671 100644
--- a/sys/arm/arm/busdma_machdep.c
+++ b/sys/arm/arm/busdma_machdep.c
@@ -555,12 +555,12 @@ int
bus_dmamap_destroy(bus_dma_tag_t dmat, bus_dmamap_t map)
{
- _busdma_free_dmamap(map);
if (STAILQ_FIRST(&map->bpages) != NULL) {
CTR3(KTR_BUSDMA, "%s: tag %p error %d",
__func__, dmat, EBUSY);
return (EBUSY);
}
+ _busdma_free_dmamap(map);
if (dmat->bounce_zone)
dmat->bounce_zone->map_count--;
dmat->map_count--;
OpenPOWER on IntegriCloud