From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755896AbdEMQo4 (ORCPT ); Sat, 13 May 2017 12:44:56 -0400 Received: from [195.159.176.226] ([195.159.176.226]:45699 "EHLO blaine.gmane.org" rhost-flags-FAIL-FAIL-OK-OK) by vger.kernel.org with ESMTP id S1755555AbdEMQoy (ORCPT ); Sat, 13 May 2017 12:44:54 -0400 X-Injected-Via-Gmane: http://gmane.org/ To: linux-kernel@vger.kernel.org From: Christophe JAILLET Subject: Re: [PATCH 2/2] ARM: davinci: PM: Do not free useful resources in normal path in 'davinci_pm_init' Date: Sat, 13 May 2017 18:44:46 +0200 Message-ID: References: <20170513114020.23668-1-christophe.jaillet@wanadoo.fr> <59170891.4010307@bfs.de> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 8bit X-Complaints-To: usenet@blaine.gmane.org User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:45.0) Gecko/20100101 Thunderbird/45.8.0 In-Reply-To: <59170891.4010307@bfs.de> Cc: linux-arm-kernel@lists.infradead.org, kernel-janitors@vger.kernel.org Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Le 13/05/2017 à 15:22, walter harms a écrit : > > Am 13.05.2017 13:40, schrieb Christophe JAILLET: >> This looks spurious to iounmap resources in the normal path of this init >> function. >> The 3 ioremap'ed fields of 'pm_config' can be accessed later on in other >> functions, so it is likely that we should return 'success' before unrolling >> everything. >> >> Fixes: aa9aa1ec2df6 ("ARM: davinci: PM: rework init, remove platform device") >> Signed-off-by: Christophe JAILLET >> --- >> This patch is just a *guess*. The end of the function looks more like a >> error handling code rather than a normal path. >> --- >> arch/arm/mach-davinci/pm.c | 1 + >> 1 file changed, 1 insertion(+) >> >> diff --git a/arch/arm/mach-davinci/pm.c b/arch/arm/mach-davinci/pm.c >> index d282b0783ecf..163d865abbf9 100644 >> --- a/arch/arm/mach-davinci/pm.c >> +++ b/arch/arm/mach-davinci/pm.c >> @@ -161,6 +161,7 @@ int __init davinci_pm_init(void) >> davinci_cpu_suspend_sz); >> >> suspend_set_ops(&davinci_pm_ops); >> + return 0; >> >> no_sram_mem: >> iounmap(pm_config.ddrpsc_reg_base); > > looks like, but that would mean that is wrong also: > > davinci_sram_suspend = sram_alloc(davinci_cpu_suspend_sz, NULL); > if (!davinci_sram_suspend) { > pr_err("PM: cannot allocate SRAM memory\n"); > return -ENOMEM; > } > > what means 1 iounmap missing. > > re, > wh > This is what I try to fix in the [1/2] patch. CJ