[PATCH 058/510] solo6x10: [P2M] Fix memory leak

Greg Kroah-Hartman gregkh at suse.de
Mon Jan 10 20:36:22 UTC 2011


From: Ben Collins <bcollins at bluecherry.net>

Signed-off-by: Ben Collins <bcollins at bluecherry.net>
---
 drivers/staging/solo6x10/solo6010-p2m.c |    5 ++++-
 1 files changed, 4 insertions(+), 1 deletions(-)

diff --git a/drivers/staging/solo6x10/solo6010-p2m.c b/drivers/staging/solo6x10/solo6010-p2m.c
index 9f24180..c91fc46 100644
--- a/drivers/staging/solo6x10/solo6010-p2m.c
+++ b/drivers/staging/solo6x10/solo6010-p2m.c
@@ -51,13 +51,16 @@ int solo_p2m_dma_t(struct solo6010_dev *solo_dev, u8 id, int wr,
 		   dma_addr_t dma_addr, u32 ext_addr, u32 size)
 {
 	struct p2m_desc *desc = kzalloc(sizeof(*desc) * 2, GFP_DMA);
+	int ret;
 
 	if (desc == NULL)
 		return -ENOMEM;
 
 	solo_p2m_push_desc(&desc[1], wr, dma_addr, ext_addr, size, 0, 0);
+	ret = solo_p2m_dma_desc(solo_dev, id, desc, 2);
+	kfree(desc);
 
-	return solo_p2m_dma_desc(solo_dev, id, desc, 2);
+	return ret;
 }
 
 void solo_p2m_push_desc(struct p2m_desc *desc, int wr, dma_addr_t dma_addr,
-- 
1.7.3.2




More information about the devel mailing list