From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S932379AbbLNKbv (ORCPT ); Mon, 14 Dec 2015 05:31:51 -0500 Received: from mailout4.w1.samsung.com ([210.118.77.14]:9240 "EHLO mailout4.w1.samsung.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S932162AbbLNKbt (ORCPT ); Mon, 14 Dec 2015 05:31:49 -0500 X-AuditID: cbfec7f5-f79b16d000005389-6c-566e9a9329e9 Subject: Re: [PATCH v2 14/38] clk: vt8500: fix sign of possible PLL values To: Stephen Boyd References: <20151001225628.GU19319@codeaurora.org> <1443761393-29366-1-git-send-email-a.hajda@samsung.com> Cc: linux-kernel@vger.kernel.org, Bartlomiej Zolnierkiewicz , Marek Szyprowski , Michael Turquette , linux-clk@vger.kernel.org From: Andrzej Hajda Message-id: <566E9A4F.1030203@samsung.com> Date: Mon, 14 Dec 2015 11:30:39 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.4.0 MIME-version: 1.0 In-reply-to: <1443761393-29366-1-git-send-email-a.hajda@samsung.com> Content-type: text/plain; charset=windows-1252 Content-transfer-encoding: 7bit X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFjrHLMWRmVeSWpSXmKPExsVy+t/xq7qTZ+WFGfSfYrLYOGM9q8XHnnus Fpd3zWGzWHvkLrvFxVOuFj/OdLM4sHm8v9HK7nG5r5fJo2/LKkaPz5vkAliiuGxSUnMyy1KL 9O0SuDLuTv/IVHBNoOL76/msDYy7ebsYOTkkBEwkul8eY4WwxSQu3FvPBmILCSxllJg43byL kQvIfs4o8fbfVyaQhLCAl0T3iimMILaIgLrE9x0noRpyJRqO7mUHaWAWuMgoMfXhKWaQBJuA psTfzTfBingFtCT2dq8FG8QioCrx/98foM0cHKICERKLdmRClAhK/Jh8jwXE5hRwkXi84jwj SAmzgJ7E/YtaIGFmAXmJzWveMk9gFJiFpGMWQtUsJFULGJlXMYqmliYXFCel5xrpFSfmFpfm pesl5+duYoSE8tcdjEuPWR1iFOBgVOLhzViWGybEmlhWXJl7iFGCg1lJhDfBKi9MiDclsbIq tSg/vqg0J7X4EKM0B4uSOO/MXe9DhATSE0tSs1NTC1KLYLJMHJxSDYzZqn/PCD7/zbtmq5Up P6/TXuaFUgXRPGJ/r5084b9KsPXT9CVzN7t8C5mytlwubM7D+S/VQqYbNqhFsW4q0fitWfzN PkeEsdYkvGPDwyvSqbK+h25NDVjx9uP1+CT273s613BGVW3PfznjTEU4t5zIWf+HkT93K0Wt SPqUaKnPZ73wi0gDj7wSS3FGoqEWc1FxIgBwi9XnYQIAAA== Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi, Ping. Regards Andrzej On 10/02/2015 06:49 AM, Andrzej Hajda wrote: > With unsigned values underflow in loops can occur resulting in > theoretically infinite loops. > > The problem has been detected using proposed semantic patch > scripts/coccinelle/tests/unsigned_lesser_than_zero.cocci [1]. > > [1]: http://permalink.gmane.org/gmane.linux.kernel/2038576 > > Signed-off-by: Andrzej Hajda > --- > Hi Stephen, > > This is modified version according to your request, ie only problematic > variables have changed type. > I still think that 1st version is better, but of course it is up to you. > > Regards > Andrzej > > drivers/clk/clk-vt8500.c | 9 ++++++--- > 1 file changed, 6 insertions(+), 3 deletions(-) > > diff --git a/drivers/clk/clk-vt8500.c b/drivers/clk/clk-vt8500.c > index 37e9288..98c4492 100644 > --- a/drivers/clk/clk-vt8500.c > +++ b/drivers/clk/clk-vt8500.c > @@ -384,7 +384,8 @@ static void vt8500_find_pll_bits(unsigned long rate, unsigned long parent_rate, > static void wm8650_find_pll_bits(unsigned long rate, unsigned long parent_rate, > u32 *multiplier, u32 *divisor1, u32 *divisor2) > { > - u32 mul, div1, div2; > + u32 mul, div1; > + int div2; > u32 best_mul, best_div1, best_div2; > unsigned long tclk, rate_err, best_err; > > @@ -452,7 +453,8 @@ static u32 wm8750_get_filter(u32 parent_rate, u32 divisor1) > static void wm8750_find_pll_bits(unsigned long rate, unsigned long parent_rate, > u32 *filter, u32 *multiplier, u32 *divisor1, u32 *divisor2) > { > - u32 mul, div1, div2; > + u32 mul; > + int div1, div2; > u32 best_mul, best_div1, best_div2; > unsigned long tclk, rate_err, best_err; > > @@ -496,7 +498,8 @@ static void wm8750_find_pll_bits(unsigned long rate, unsigned long parent_rate, > static void wm8850_find_pll_bits(unsigned long rate, unsigned long parent_rate, > u32 *multiplier, u32 *divisor1, u32 *divisor2) > { > - u32 mul, div1, div2; > + u32 mul; > + int div1, div2; > u32 best_mul, best_div1, best_div2; > unsigned long tclk, rate_err, best_err; >