net: thunderx: Don't leak phy device references on -EPROBE_DEFER condition.
authorDavid Daney <david.daney@cavium.com>
Tue, 15 Mar 2016 00:30:39 +0000 (17:30 -0700)
committerDavid S. Miller <davem@davemloft.net>
Wed, 16 Mar 2016 23:55:37 +0000 (19:55 -0400)
commitb7d3e3d3d21a09f8e45043d548224000a8efe06a
treefa226a278d8b74975bb064c94409f72f85b3898f
parent9277a4f875adbeeb6209c0a3e3cf04c752522b2e
net: thunderx: Don't leak phy device references on -EPROBE_DEFER condition.

It is possible, although unlikely, that probing will find the
phy_device for the first LMAC of a thunder BGX device, but then need
to fail with -EPROBE_DEFER on a subsequent LMAC.  In this case, we
need to call put_device() on each of the phy_devices that were
obtained, but will be unused due to returning -EPROBE_DEFER.

Also, since we can break out of the probing loop early, we need to
explicitly call of_node_put() outside of the loop.

Signed-off-by: David Daney <david.daney@cavium.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/cavium/thunder/thunder_bgx.c