Hi, Adding devicetree list, Julia, Rob and Tomi to Cc. * Peng Hao <peng.hao2@xxxxxxxxxx> [190212 23:11]: > of_find_device_by_node() takes a reference to the struct device > when it finds a match via get_device.When returning error we should > call put_device. > > Signed-off-by: Peng Hao <peng.hao2@xxxxxxxxxx> > --- > arch/arm/mach-omap2/display.c | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/arch/arm/mach-omap2/display.c b/arch/arm/mach-omap2/display.c > index f86b72d..c6aa9ed 100644 > --- a/arch/arm/mach-omap2/display.c > +++ b/arch/arm/mach-omap2/display.c > @@ -258,6 +258,7 @@ static int __init omapdss_init_of(void) > r = of_platform_populate(node, NULL, NULL, &pdev->dev); > if (r) { > pr_err("Unable to populate DSS submodule devices\n"); > + put_device(&pdev->dev); > return r; > } In general, if the device tree node is never used afterwards, should this be just: r = of_platform_populate(node, NULL, NULL, &pdev->dev); of_node_put(dev_node); if (r) { ... } If so, Julia might have a Coccinelle recpipe for it? Regards, Tony