[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-id: <566E9B27.9010804@samsung.com>
Date: Mon, 14 Dec 2015 11:34:15 +0100
From: Andrzej Hajda <a.hajda@...sung.com>
To: linux-kernel@...r.kernel.org
Cc: Bartlomiej Zolnierkiewicz <b.zolnierkie@...sung.com>,
Marek Szyprowski <m.szyprowski@...sung.com>,
Daniel Lezcano <daniel.lezcano@...aro.org>,
Thomas Gleixner <tglx@...utronix.de>
Subject: Re: [PATCH 11/19] clocksource: fix __ftm_clk_init result
Hi,
Ping.
Regards
Andrzej
On 09/24/2015 04:00 PM, Andrzej Hajda wrote:
> The function tries to return clock frequency (unsigned long) or error
> (int < 0). Using int as a result could be dangerous. On the other side
> caller is not interested in error value, so the best solution is to
> return frequency or zero in case of error, for this unsigned long is OK.
>
> The problem has been detected using proposed semantic patch
> scripts/coccinelle/tests/assign_signed_to_unsigned.cocci [1].
>
> [1]: http://permalink.gmane.org/gmane.linux.kernel/2046107
>
> Signed-off-by: Andrzej Hajda <a.hajda@...sung.com>
> ---
> Hi,
>
> To avoid problems with too many mail recipients I have sent whole
> patchset only to LKML. Anyway patches have no dependencies.
>
> Regards
> Andrzej
> ---
> drivers/clocksource/fsl_ftm_timer.c | 8 ++++----
> 1 file changed, 4 insertions(+), 4 deletions(-)
>
> diff --git a/drivers/clocksource/fsl_ftm_timer.c b/drivers/clocksource/fsl_ftm_timer.c
> index ef43469..11a7ae7 100644
> --- a/drivers/clocksource/fsl_ftm_timer.c
> +++ b/drivers/clocksource/fsl_ftm_timer.c
> @@ -248,7 +248,7 @@ static int __init ftm_clocksource_init(unsigned long freq)
> return 0;
> }
>
> -static int __init __ftm_clk_init(struct device_node *np, char *cnt_name,
> +static unsigned long __init __ftm_clk_init(struct device_node *np, char *cnt_name,
> char *ftm_name)
> {
> struct clk *clk;
> @@ -257,19 +257,19 @@ static int __init __ftm_clk_init(struct device_node *np, char *cnt_name,
> clk = of_clk_get_by_name(np, cnt_name);
> if (IS_ERR(clk)) {
> pr_err("ftm: Cannot get \"%s\": %ld\n", cnt_name, PTR_ERR(clk));
> - return PTR_ERR(clk);
> + return 0;
> }
> err = clk_prepare_enable(clk);
> if (err) {
> pr_err("ftm: clock failed to prepare+enable \"%s\": %d\n",
> cnt_name, err);
> - return err;
> + return 0;
> }
>
> clk = of_clk_get_by_name(np, ftm_name);
> if (IS_ERR(clk)) {
> pr_err("ftm: Cannot get \"%s\": %ld\n", ftm_name, PTR_ERR(clk));
> - return PTR_ERR(clk);
> + return 0;
> }
> err = clk_prepare_enable(clk);
> if (err)
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists