]> xenbits.xensource.com Git - people/liuw/freebsd.git/commitdiff
Fix slots DMA memory handling. It's similar to r290553.
authorskra <skra@FreeBSD.org>
Tue, 10 Nov 2015 10:56:52 +0000 (10:56 +0000)
committerskra <skra@FreeBSD.org>
Tue, 10 Nov 2015 10:56:52 +0000 (10:56 +0000)
Discussed with: gonzo
Approved by: kib (mentor)

sys/contrib/vchiq/interface/vchiq_arm/vchiq_2835_arm.c

index 6e5f32079675805fd728af8d13eb8ee763801e03..753e8e510631821ee50ecf75c1ef074bfb5cb861 100644 (file)
@@ -213,10 +213,10 @@ vchiq_platform_init(VCHIQ_STATE_T *state)
 
 failed_vchiq_init:
 failed_init_slots:
-failed_load:
        bus_dmamap_unload(bcm_slots_dma_tag, bcm_slots_dma_map);
+failed_load:
+       bus_dmamem_free(bcm_slots_dma_tag, g_slot_mem, bcm_slots_dma_map);
 failed_alloc:
-       bus_dmamap_destroy(bcm_slots_dma_tag, bcm_slots_dma_map);
        bus_dma_tag_destroy(bcm_slots_dma_tag);
 
    return err;
@@ -227,7 +227,7 @@ vchiq_platform_exit(VCHIQ_STATE_T *state)
 {
 
        bus_dmamap_unload(bcm_slots_dma_tag, bcm_slots_dma_map);
-       bus_dmamap_destroy(bcm_slots_dma_tag, bcm_slots_dma_map);
+       bus_dmamem_free(bcm_slots_dma_tag, g_slot_mem, bcm_slots_dma_map);
        bus_dma_tag_destroy(bcm_slots_dma_tag);
 }