Searched hist:"6 f2c9bd85eee30fd77e6c65c097769ad0d6d7352" (Results 1 – 1 of 1) sorted by relevance
/openbmc/linux/drivers/net/ethernet/freescale/ |
H A D | gianfar.c | diff 6f2c9bd85eee30fd77e6c65c097769ad0d6d7352 Thu Aug 07 15:17:07 CDT 2014 Uwe Kleine-König <u.kleine-koenig@pengutronix.de> net: gianfar: fix reference counting for phy_node
The line before the changed if condition is:
priv->phy_node = of_parse_phandle(np, "phy-handle", 0);
. If this call succeeds priv->phy_node must not be overwritten in the if block; otherwise the reference to the node returned by of_parse_phandle is lost. So add a check that the if block isn't executed in this case.
Furthermore in the fixed phy case no reference is aquired for phy_node resulting in an of_node_put without holding a reference. To fix that, get a reference on the MAC dt node.
Fixes: be40364544bd ("gianfar: use the new fixed PHY helpers") Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de> Signed-off-by: David S. Miller <davem@davemloft.net>
|