Fri, Sep 27, 2024 at 01:20:59AM +0200, Javier Carrasco kirjoitti: > Switch to device_for_each_child_node_scoped() to simplify the code by > removing the need for calls to fwnode_handle_put() in the error paths. > > This also prevents possible memory leaks if new error paths are added > without the required call to fwnode_handle_put(). > > After switching to the scoped variant, there is no longer need for a > jump to 'child_out', as an immediate return is possible. ... > if (ret) { > dev_err(&priv->client->dev, "reg property missing\n"); > - goto child_out; > + return ret; return dev_err_probe(...); > } ... > if (ret) { > dev_err(&priv->client->dev, "ti,led-mode property missing\n"); > - goto child_out; > + return ret; > } ... > if (ret) { > dev_err(&priv->client->dev, "led-sources property missing\n"); > - goto child_out; > + return ret; > } ... > if (ret) { > dev_err(&priv->client->dev, "led register err: %d\n", > ret); > - goto child_out; > + return ret; > } > > ret = lm3532_init_registers(led); > if (ret) { > dev_err(&priv->client->dev, "register init err: %d\n", > ret); > - goto child_out; > + return ret; > } Ditto for all above. -- With Best Regards, Andy Shevchenko