diff mbox

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

Message ID 56321DC8.9020101@baylibre.com
State Changes Requested, archived
Delegated to: David Miller
Headers show

Commit Message

Neil Armstrong Oct. 29, 2015, 1:23 p.m. UTC
Upon probe failure or unbinding, add missing dev_put() calls on
master netdev.

Signed-off-by: Neil Armstrong <narmstrong@baylibre.com>
---
 net/dsa/dsa.c | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)
diff mbox

Patch

diff --git a/net/dsa/dsa.c b/net/dsa/dsa.c
index b2f696c..597a462 100644
--- a/net/dsa/dsa.c
+++ b/net/dsa/dsa.c
@@ -928,8 +928,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;

@@ -963,6 +965,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)