From: Tony Lindgren <tony@atomide.com>
To: kernel-janitors@vger.kernel.org
Subject: Re: [bug report] bus: ti-sysc: Add handling for clkctrl opt clocks
Date: Thu, 17 May 2018 14:03:02 +0000 [thread overview]
Message-ID: <20180517140302.GO25808@atomide.com> (raw)
In-Reply-To: <20180517124514.GA9149@mwanda>
* Dan Carpenter <dan.carpenter@oracle.com> [180517 12:47]:
> Hello Tony Lindgren,
>
> The patch 09dfe5810762: "bus: ti-sysc: Add handling for clkctrl opt
> clocks" from Apr 16, 2018, leads to the following static checker
> warning:
>
> drivers/bus/ti-sysc.c:131 sysc_get_one_clock()
> error: buffer overflow 'clock_names' 2 <= 9
>
> drivers/bus/ti-sysc.c
> 120 static int sysc_get_one_clock(struct sysc *ddata, const char *name)
> 121 {
> 122 int error, i, index = -ENODEV;
> 123
> 124 if (!strncmp(clock_names[SYSC_FCK], name, 3))
> 125 index = SYSC_FCK;
> 126 else if (!strncmp(clock_names[SYSC_ICK], name, 3))
> 127 index = SYSC_ICK;
> 128
> 129 if (index < 0) {
> 130 for (i = SYSC_OPTFCK0; i < SYSC_MAX_CLOCKS; i++) {
> 131 if (!clock_names[i]) {
> ^^^^^^^^^^^^^^
> This isn't right. The clock_names[] array only has the two elements...
> Probably it should be testing ddate->clocks[i]?
Yup so it seems. Will take a look today.
> 143 ddata->clocks[index] = devm_clk_get(ddata->dev, name);
> 144 if (IS_ERR(ddata->clocks[index])) {
> 145 if (PTR_ERR(ddata->clocks[index]) = -ENOENT)
> 146 return 0;
> 147
> 148 dev_err(ddata->dev, "clock get error for %s: %li\n",
> 149 name, PTR_ERR(ddata->clocks[index]));
> 150
>
> Should we set ddata->clocks[index] = NULL on this path?
Maybe yeah. At least if clk_prepare later on fails we want to set it to
either to NULL or error to prevent clk_enable() being called on a failed
clock.
Regards,
Tony
next prev parent reply other threads:[~2018-05-17 14:03 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-05-17 12:45 [bug report] bus: ti-sysc: Add handling for clkctrl opt clocks Dan Carpenter
2018-05-17 14:03 ` Tony Lindgren [this message]
2018-05-17 22:03 ` Tony Lindgren
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20180517140302.GO25808@atomide.com \
--to=tony@atomide.com \
--cc=kernel-janitors@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.