On Sat, Nov 02, 2024 at 11:53:44AM +0800, Zijun Hu wrote: > From: Zijun Hu <quic_zijuhu@xxxxxxxxxxx> > > For devm_of_phy_provider_unregister(), its comment says it needs to invoke > of_phy_provider_unregister() to unregister the phy provider, but it will > not actually invoke the function since devres_destroy() does not call > devm_phy_provider_release(), and the missing of_phy_provider_unregister() > call will case: > > - The phy provider fails to be unregistered. > - Leak both memory and the OF node refcount. > > Fortunately, the faulty API has not been used by current kernel tree. > Fixed by using devres_release() instead of devres_destroy() within the API. > > Fixes: ff764963479a ("drivers: phy: add generic PHY framework") > Cc: stable@xxxxxxxxxxxxxxx > Signed-off-by: Zijun Hu <quic_zijuhu@xxxxxxxxxxx> Reviewed-by: Johan Hovold <johan+linaro@xxxxxxxxxx>