Subject: [PATCH 4/6] net: dsa: Add missing master netdev dev_put() calls

From: Neil Armstrong <[email-masked]>
Date: Tue, 27 Oct 2015 15:49:09 +0100

Upon probe failure or unbinding, add missing dev_put() calls.

Signed-off-by: Neil Armstrong <[email-masked]>
---
 net/dsa/dsa.c | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/net/dsa/dsa.c b/net/dsa/dsa.c
index acbf854..9240a46 100644
--- a/net/dsa/dsa.c
+++ b/net/dsa/dsa.c
@@ -931,8 +931,10 @@ static int dsa_probe(struct platform_device *pdev)
 	platform_set_drvdata(pdev, dst);

 	ret = dsa_setup_dst(dst, dev, &pdev->dev, pd);
-	if (ret)
+	if (ret) {
+		dev_put(dev);
 		goto out;
+	}

 	return 0;

@@ -965,6 +967,8 @@ static void dsa_remove_dst(struct dsa_switch_tree *dst)
 		if (ds)
 			dsa_switch_destroy(ds);
 	}
+
+	dev_put(dst->master_netdev);
 }

 static int dsa_remove(struct platform_device *pdev)
-- 
1.9.1