diff options
Diffstat (limited to 'arch')
-rw-r--r-- | arch/cris/arch-v32/drivers/pci/dma.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/arch/cris/arch-v32/drivers/pci/dma.c b/arch/cris/arch-v32/drivers/pci/dma.c index 66f9500fbc02..e0364654fc44 100644 --- a/arch/cris/arch-v32/drivers/pci/dma.c +++ b/arch/cris/arch-v32/drivers/pci/dma.c | |||
@@ -93,7 +93,7 @@ int dma_declare_coherent_memory(struct device *dev, dma_addr_t bus_addr, | |||
93 | 93 | ||
94 | dev->dma_mem = kzalloc(sizeof(struct dma_coherent_mem), GFP_KERNEL); | 94 | dev->dma_mem = kzalloc(sizeof(struct dma_coherent_mem), GFP_KERNEL); |
95 | if (!dev->dma_mem) | 95 | if (!dev->dma_mem) |
96 | goto out; | 96 | goto iounmap_out; |
97 | dev->dma_mem->bitmap = kzalloc(bitmap_size, GFP_KERNEL); | 97 | dev->dma_mem->bitmap = kzalloc(bitmap_size, GFP_KERNEL); |
98 | if (!dev->dma_mem->bitmap) | 98 | if (!dev->dma_mem->bitmap) |
99 | goto free1_out; | 99 | goto free1_out; |
@@ -110,6 +110,8 @@ int dma_declare_coherent_memory(struct device *dev, dma_addr_t bus_addr, | |||
110 | 110 | ||
111 | free1_out: | 111 | free1_out: |
112 | kfree(dev->dma_mem); | 112 | kfree(dev->dma_mem); |
113 | iounmap_out: | ||
114 | iounmap(mem_base); | ||
113 | out: | 115 | out: |
114 | return 0; | 116 | return 0; |
115 | } | 117 | } |