From: Xuanqiang Luo <[email protected]>
dp83640_probe() publishes its per-PHY state through phydev before
registering the PTP clock. If registration fails, the private data is
freed while phydev->mii_ts and phydev->priv still point to it, and
default_timestamp remains set.
Clear the published PHY state and reset the PTP clock pointer before
freeing the private data.
Fixes: 4715f65ffa05 ("net: Introduce a new MII time stamping interface.")
Signed-off-by: Xuanqiang Luo <[email protected]>
---
drivers/net/phy/dp83640.c | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/drivers/net/phy/dp83640.c b/drivers/net/phy/dp83640.c
index ba39d30b74705..7aa5cf0a7bb03 100644
--- a/drivers/net/phy/dp83640.c
+++ b/drivers/net/phy/dp83640.c
@@ -1449,6 +1449,10 @@ static int dp83640_probe(struct phy_device *phydev)
no_register:
clock->chosen = NULL;
+ clock->ptp_clock = NULL;
+ phydev->default_timestamp = false;
+ phydev->mii_ts = NULL;
+ phydev->priv = NULL;
kfree(dp83640);
no_memory:
dp83640_clock_put(clock);
--
2.43.0
lmpx.com only provides a reader for public news (NNTP) servers. It is not
affiliated with the servers or forums shown here and is not responsible for
the content of articles, which is written by their respective authors.