summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniel Drake <dsd@laptop.org>2012-08-01 21:35:36 +0100
committerJohn W. Linville <linville@tuxdriver.com>2012-08-02 13:51:47 -0400
commit8c1057e43c99e393fe2e14cca879affcb516d36b (patch)
treedca3305b4012a79d01e44e48f760aec6bb336caf
parent16ebd60856bc5d980722cb85b259a4d5b301e94a (diff)
downloadlinux-3.10-8c1057e43c99e393fe2e14cca879affcb516d36b.tar.gz
linux-3.10-8c1057e43c99e393fe2e14cca879affcb516d36b.tar.bz2
linux-3.10-8c1057e43c99e393fe2e14cca879affcb516d36b.zip
libertas: fix two memory leaks
The if_sdio_card structure was never being freed, and neither was the command structure used for association. Signed-off-by: Daniel Drake <dsd@laptop.org> Signed-off-by: John W. Linville <linville@tuxdriver.com>
-rw-r--r--drivers/net/wireless/libertas/cfg.c1
-rw-r--r--drivers/net/wireless/libertas/if_sdio.c1
2 files changed, 2 insertions, 0 deletions
diff --git a/drivers/net/wireless/libertas/cfg.c b/drivers/net/wireless/libertas/cfg.c
index eb5de800ed9..1c10b542ab2 100644
--- a/drivers/net/wireless/libertas/cfg.c
+++ b/drivers/net/wireless/libertas/cfg.c
@@ -1254,6 +1254,7 @@ static int lbs_associate(struct lbs_private *priv,
netif_tx_wake_all_queues(priv->dev);
}
+ kfree(cmd);
done:
lbs_deb_leave_args(LBS_DEB_CFG80211, "ret %d", ret);
return ret;
diff --git a/drivers/net/wireless/libertas/if_sdio.c b/drivers/net/wireless/libertas/if_sdio.c
index 76caebaa439..e970897f6ab 100644
--- a/drivers/net/wireless/libertas/if_sdio.c
+++ b/drivers/net/wireless/libertas/if_sdio.c
@@ -1314,6 +1314,7 @@ static void if_sdio_remove(struct sdio_func *func)
kfree(packet);
}
+ kfree(card);
lbs_deb_leave(LBS_DEB_SDIO);
}