Message ID | 20240720152447.311442-1-david.hunter.linux@gmail.com (mailing list archive) |
---|---|
State | Accepted, archived |
Headers | show |
Series | da8xx-cfgchip.c: replace of_node_put with __free improves cleanup | expand |
On 7/20/24 10:24 AM, David Hunter wrote: > The use of the __free function allows the cleanup to be based on scope > instead of on another function called later. This makes the cleanup > automatic and less susceptible to errors later. > > This code was compiled without errors or warnings. > > Signed-off-by: David Hunter <david.hunter.linux@gmail.com> > --- Reviewed-by: David Lechner <david@lechnology.com>
Quoting David Hunter (2024-07-20 08:24:47) > The use of the __free function allows the cleanup to be based on scope > instead of on another function called later. This makes the cleanup > automatic and less susceptible to errors later. > > This code was compiled without errors or warnings. > > Signed-off-by: David Hunter <david.hunter.linux@gmail.com> > --- Applied to clk-next
diff --git a/drivers/clk/davinci/da8xx-cfgchip.c b/drivers/clk/davinci/da8xx-cfgchip.c index ad2d0df43dc6..5ea0c072bfbe 100644 --- a/drivers/clk/davinci/da8xx-cfgchip.c +++ b/drivers/clk/davinci/da8xx-cfgchip.c @@ -749,11 +749,9 @@ static int da8xx_cfgchip_probe(struct platform_device *pdev) clk_init = device_get_match_data(dev); if (clk_init) { - struct device_node *parent; + struct device_node *parent __free(device_node) = of_get_parent(dev->of_node); - parent = of_get_parent(dev->of_node); regmap = syscon_node_to_regmap(parent); - of_node_put(parent); } else if (pdev->id_entry && pdata) { clk_init = (void *)pdev->id_entry->driver_data; regmap = pdata->cfgchip;
The use of the __free function allows the cleanup to be based on scope instead of on another function called later. This makes the cleanup automatic and less susceptible to errors later. This code was compiled without errors or warnings. Signed-off-by: David Hunter <david.hunter.linux@gmail.com> --- drivers/clk/davinci/da8xx-cfgchip.c | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-)