From: Will Dyson <[EMAIL PROTECTED]>
When doing setup for the dma ring, the txhdr_cache must be freed if there is an
error after it is allocated.
Signed-off-by: Will Dyson <[EMAIL PROTECTED]>
---
.../net/wireless/mac80211/bcm43xx/bcm43xx_dma.c | 4 +++-
1 files changed, 3 insertions(+), 1 deletions(-)
diff --git a/drivers/net/wireless/mac80211/bcm43xx/bcm43xx_dma.c
b/drivers/net/wireless/mac80211/bcm43xx/bcm43xx_dma.c
index 4abc6c8..1dc95a7 100644
--- a/drivers/net/wireless/mac80211/bcm43xx/bcm43xx_dma.c
+++ b/drivers/net/wireless/mac80211/bcm43xx/bcm43xx_dma.c
@@ -777,7 +777,7 @@ struct bcm43xx_dmaring * bcm43xx_setup_dmaring(struct
bcm43xx_wldev *dev,
err = alloc_ringmemory(ring);
if (err)
- goto err_kfree_meta;
+ goto err_kfree_txhdr_cache;
err = dmacontroller_setup(ring);
if (err)
goto err_free_ringmemory;
@@ -787,6 +787,8 @@ out:
err_free_ringmemory:
free_ringmemory(ring);
+err_kfree_txhdr_cache:
+ kfree(ring->txhdr_cache);
err_kfree_meta:
kfree(ring->meta);
err_kfree_ring:
--
1.5.0.3
_______________________________________________
Bcm43xx-dev mailing list
[email protected]
https://lists.berlios.de/mailman/listinfo/bcm43xx-dev