Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1425485AbdDVB61 (ORCPT ); Fri, 21 Apr 2017 21:58:27 -0400 Received: from smtp.codeaurora.org ([198.145.29.96]:60720 "EHLO smtp.codeaurora.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1424935AbdDVB6W (ORCPT ); Fri, 21 Apr 2017 21:58:22 -0400 DMARC-Filter: OpenDMARC Filter v1.3.2 smtp.codeaurora.org 47B5860F75 Authentication-Results: pdx-caf-mail.web.codeaurora.org; dmarc=none (p=none dis=none) header.from=codeaurora.org Authentication-Results: pdx-caf-mail.web.codeaurora.org; spf=none smtp.mailfrom=sboyd@codeaurora.org Date: Fri, 21 Apr 2017 18:58:20 -0700 From: Stephen Boyd To: Tero Kristo Cc: Arnd Bergmann , Michael Turquette , Tony Lindgren , Keerthy , linux-omap@vger.kernel.org, linux-clk@vger.kernel.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH 1/2] clk: ti: divider: try to fix ti_clk_register_divider Message-ID: <20170422015820.GZ7065@codeaurora.org> References: <20170419174507.4055014-1-arnd@arndb.de> <7f0c996e-df53-ffb7-2c02-2f7fa66d2b94@ti.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <7f0c996e-df53-ffb7-2c02-2f7fa66d2b94@ti.com> User-Agent: Mutt/1.5.21 (2010-09-15) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 2046 Lines: 52 On 04/20, Tero Kristo wrote: > On 19/04/17 20:44, Arnd Bergmann wrote: > >The newly introduced function is entirely bogus as I found when looking > >at this warning: > > > >drivers/clk/ti/divider.c: In function 'ti_clk_register_divider': > >drivers/clk/ti/divider.c:460:8: error: 'reg' may be used uninitialized in this function [-Werror=maybe-uninitialized] > > > >Treating a 'u32' variable as a structure leads to a stack overflow here, > >and the register address we pass down is never initialized. > > > >As the code in its original form makes no sense, I can only guess what > >the intention was, and change it to take the address from div->reg.ptr > >instead. > > Actually, I believe the code you are fixing works before this commit: > > commit 6c0afb503937a12a8d20a805fcf263e31afa9871 > Author: Tero Kristo > Date: Thu Feb 9 11:24:37 2017 +0200 > > clk: ti: convert to use proper register definition for all accesses > > > ... it attempted to convert all the register accesses to the new > format and change the size of the clk_omap_reg in bulk but I missed > converting this one. Previously the size of the clk_omap_reg > definition was u32, but this was confusing and bug prone so I > changed it. > > The failing piece of code is only executed for legacy boot mode > OMAP3 right now, which could be potentially stripped out of the > kernel already (I think Tony removed the support for non-DT boot > OMAP3 boards already...?) This explains why I didn't notice the > issue in my local testing either. > > > > >Fixes: d96f774b2538 ("clk: ti: divider: add support for legacy divider init") > >Signed-off-by: Arnd Bergmann > > So, this patch itself is fine, but the desc should be updated to > reflect the above somehow. > > And the "Fixes:" line should be updated to point to the commit > mentioned above also. > Waiting for Arnd to agree. I can also rename reg_setup to reg. -- Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum, a Linux Foundation Collaborative Project