From f97170a720ad1e3d22bf3fb1f06e9e4ce974860e Mon Sep 17 00:00:00 2001
From: Gabor Juhos <juhosg@openwrt.org>
Date: Sun, 10 Feb 2013 18:42:07 +0000
Subject: [PATCH] generic: ar8216: free mib counters from ar8xxx_free

Signed-off-by: Gabor Juhos <juhosg@openwrt.org>

SVN-Revision: 35545
---
 target/linux/generic/files/drivers/net/phy/ar8216.c | 6 ++----
 1 file changed, 2 insertions(+), 4 deletions(-)

diff --git a/target/linux/generic/files/drivers/net/phy/ar8216.c b/target/linux/generic/files/drivers/net/phy/ar8216.c
index a7a2a63567..492963de1c 100644
--- a/target/linux/generic/files/drivers/net/phy/ar8216.c
+++ b/target/linux/generic/files/drivers/net/phy/ar8216.c
@@ -1762,7 +1762,6 @@ ar8xxx_mib_cleanup(struct ar8216_priv *priv)
 		return;
 
 	cancel_delayed_work(&priv->mib_work);
-	kfree(priv->mib_stats);
 }
 
 static struct ar8216_priv *
@@ -1784,6 +1783,7 @@ ar8xxx_create(void)
 static void
 ar8xxx_free(struct ar8216_priv *priv)
 {
+	kfree(priv->mib_stats);
 	kfree(priv);
 }
 
@@ -1893,7 +1893,7 @@ ar8216_config_init(struct phy_device *pdev)
 
 	ret = register_switch(swdev, pdev->attached_dev);
 	if (ret)
-		goto err_cleanup_mib;
+		goto err_free_priv;
 
 	printk(KERN_INFO "%s: %s switch driver attached.\n",
 		pdev->attached_dev->name, swdev->name);
@@ -1924,8 +1924,6 @@ ar8216_config_init(struct phy_device *pdev)
 
 err_unregister_switch:
 	unregister_switch(&priv->dev);
-err_cleanup_mib:
-	ar8xxx_mib_cleanup(priv);
 err_free_priv:
 	ar8xxx_free(priv);
 	pdev->priv = NULL;
-- 
GitLab