> @@ -123,6 +153,10 @@ int phy_led_triggers_register(struct phy_device *phy) > while (i--) > phy_led_trigger_unregister(&phy->phy_led_triggers[i]); > devm_kfree(&phy->mdio.dev, phy->phy_led_triggers); > +out_unreg_link: > + phy_led_trigger_unregister(phy->led_link_trigger); > +out_free_link: > + devm_kfree(&phy->mdio.dev, phy->led_link_trigger);
Hi Maciej The point of the devm_ API is that you don't need to worry about freeing the memory. The core will do it, when the driver is removed. I guess you are just copying the code above, which i would also say is unnecessary. Andrew