From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752569AbbKPKAV (ORCPT ); Mon, 16 Nov 2015 05:00:21 -0500 Received: from mailout2.w1.samsung.com ([210.118.77.12]:46266 "EHLO mailout2.w1.samsung.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751661AbbKPKAS (ORCPT ); Mon, 16 Nov 2015 05:00:18 -0500 X-AuditID: cbfec7f5-f794b6d000001495-19-5649a92e15b7 Message-id: <5649A92C.1020502@samsung.com> Date: Mon, 16 Nov 2015 11:00:12 +0100 From: Jacek Anaszewski User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:17.0) Gecko/20130804 Thunderbird/17.0.8 MIME-version: 1.0 To: Ingi Kim , robh+dt@kernel.org Cc: linux-leds@vger.kernel.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH] leds: ktd2692: Add missing of_node_put References: <1447124424-16525-1-git-send-email-ingi2.kim@samsung.com> In-reply-to: <1447124424-16525-1-git-send-email-ingi2.kim@samsung.com> Content-type: text/plain; charset=ISO-8859-1; format=flowed Content-transfer-encoding: 7bit X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFjrMLMWRmVeSWpSXmKPExsVy+t/xy7p6Kz3DDJae47XYcfMLm8XlXXPY LLa+Wcdo0br3CLsDi8emVZ1sHn1bVjF6fN4kF8AcxWWTkpqTWZZapG+XwJXRcb2HtaCDt2LC xrWsDYzzuboYOTkkBEwk2jatYYewxSQu3FvP1sXIxSEksJRR4uD9f0wQzjNGiVsHlrKAVPEK aEl0Xp8IZrMIqErMvt7HDGKzCRhK/HzxmgnEFhWIkPhzeh8rRL2gxI/J98DqRQQsJE4cvc0G YjML2Ej8XnmYEcQWFrCWeLjqLViNkICrxJXN/8Eu4hRwkzi8ZhcjRL21xMpJ26BseYnNa94y T2AUmIVkxSwkZbOQlC1gZF7FKJpamlxQnJSea6RXnJhbXJqXrpecn7uJERK0X3cwLj1mdYhR gINRiYf3xBP3MCHWxLLiytxDjBIczEoivF+XeYYJ8aYkVlalFuXHF5XmpBYfYpTmYFES5525 632IkEB6YklqdmpqQWoRTJaJg1OqgfFE+Eqppdvur28xPC8f/eLX5L6vSXxvn79czG10QztW mOPlt/LHgjNyF/KcCeMtSF1yQZt/6wOxy5+3Tv/7rI5pk3p/qcjNc8Zpe885K/ysqrLdG6Cu mrtSfNPyvwlOT2TPLHVSlKwqN6pgZ1s0w5jRdZalRDNnSPLu50nCl6892Rys8HF37UklluKM REMt5qLiRADne8WcVgIAAA== Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi Ingi, Rob, With this patch we will be leaking of_node when parsing succeeds. I think that "return 0" should be removed. I can remove it and apply, provided that Rob's ack is still in force with this. Rob? Best Regards, Jacek Anaszewski On 11/10/2015 04:00 AM, Ingi Kim wrote: > The refcount of device_node increases after of_node_get() is called. > So, a break out of the loop requires of_node_put(). > > This patch adds missing of_node_put() when loop breaks. > > Signed-off-by: Ingi Kim > --- > drivers/leds/leds-ktd2692.c | 11 ++++++++--- > 1 file changed, 8 insertions(+), 3 deletions(-) > > diff --git a/drivers/leds/leds-ktd2692.c b/drivers/leds/leds-ktd2692.c > index feca07b..dbf37ce 100644 > --- a/drivers/leds/leds-ktd2692.c > +++ b/drivers/leds/leds-ktd2692.c > @@ -332,21 +332,26 @@ static int ktd2692_parse_dt(struct ktd2692_context *led, struct device *dev, > &cfg->movie_max_microamp); > if (ret) { > dev_err(dev, "failed to parse led-max-microamp\n"); > - return ret; > + goto err_parse_dt; > } > > ret = of_property_read_u32(child_node, "flash-max-microamp", > &cfg->flash_max_microamp); > if (ret) { > dev_err(dev, "failed to parse flash-max-microamp\n"); > - return ret; > + goto err_parse_dt; > } > > ret = of_property_read_u32(child_node, "flash-max-timeout-us", > &cfg->flash_max_timeout); > - if (ret) > + if (ret) { > dev_err(dev, "failed to parse flash-max-timeout-us\n"); > + goto err_parse_dt; > + } > + > + return 0; > > +err_parse_dt: > of_node_put(child_node); > return ret; > } >