2015-12-23 21:46:34

by Ross Zwisler

[permalink] [raw]
Subject: [PATCH] gpiolib: Fix uninitialized variable warning

Commit ef7c7553039b ("gpiolib: improve overlap check of range of gpio")
introduced the following compiler warning:

drivers/gpio/gpiolib.c: In function ‘gpiochip_add’:
drivers/gpio/gpiolib.c:193:20: warning: ‘iterator’ may be used uninitialized in this function [-Wmaybe-uninitialized]
struct gpio_chip *iterator;
^

Fix this by initializing 'iterator' to NULL.

Signed-off-by: Ross Zwisler <[email protected]>
---

This was found in next-20151223.

---
drivers/gpio/gpiolib.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/gpio/gpiolib.c b/drivers/gpio/gpiolib.c
index d72ac1f..abdcd6c 100644
--- a/drivers/gpio/gpiolib.c
+++ b/drivers/gpio/gpiolib.c
@@ -190,7 +190,7 @@ EXPORT_SYMBOL_GPL(gpiod_get_direction);
static int gpiochip_add_to_list(struct gpio_chip *chip)
{
struct list_head *pos;
- struct gpio_chip *iterator;
+ struct gpio_chip *iterator = NULL;
struct gpio_chip *previous = NULL;

if (list_empty(&gpio_chips)) {
--
2.6.3


2015-12-24 08:16:49

by Bjorn Andersson

[permalink] [raw]
Subject: Re: [PATCH] gpiolib: Fix uninitialized variable warning

On Wed 23 Dec 13:46 PST 2015, Ross Zwisler wrote:

> Commit ef7c7553039b ("gpiolib: improve overlap check of range of gpio")
> introduced the following compiler warning:
>
> drivers/gpio/gpiolib.c: In function ?gpiochip_add?:
> drivers/gpio/gpiolib.c:193:20: warning: ?iterator? may be used uninitialized in this function [-Wmaybe-uninitialized]
> struct gpio_chip *iterator;
> ^
>
> Fix this by initializing 'iterator' to NULL.
>
> Signed-off-by: Ross Zwisler <[email protected]>

Reviewed-by: Bjorn Andersson <[email protected]>

Regards,
Bjorn

> ---
>
> This was found in next-20151223.
>
> ---
> drivers/gpio/gpiolib.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/gpio/gpiolib.c b/drivers/gpio/gpiolib.c
> index d72ac1f..abdcd6c 100644
> --- a/drivers/gpio/gpiolib.c
> +++ b/drivers/gpio/gpiolib.c
> @@ -190,7 +190,7 @@ EXPORT_SYMBOL_GPL(gpiod_get_direction);
> static int gpiochip_add_to_list(struct gpio_chip *chip)
> {
> struct list_head *pos;
> - struct gpio_chip *iterator;
> + struct gpio_chip *iterator = NULL;
> struct gpio_chip *previous = NULL;
>
> if (list_empty(&gpio_chips)) {
> --
> 2.6.3
>
> --
> To unsubscribe from this list: send the line "unsubscribe linux-gpio" in
> the body of a message to [email protected]
> More majordomo info at http://vger.kernel.org/majordomo-info.html

2015-12-24 09:08:04

by Linus Walleij

[permalink] [raw]
Subject: Re: [PATCH] gpiolib: Fix uninitialized variable warning

On Wed, Dec 23, 2015 at 10:46 PM, Ross Zwisler
<[email protected]> wrote:

> Commit ef7c7553039b ("gpiolib: improve overlap check of range of gpio")
> introduced the following compiler warning:
>
> drivers/gpio/gpiolib.c: In function ‘gpiochip_add’:
> drivers/gpio/gpiolib.c:193:20: warning: ‘iterator’ may be used uninitialized in this function [-Wmaybe-uninitialized]
> struct gpio_chip *iterator;
> ^
>
> Fix this by initializing 'iterator' to NULL.
>
> Signed-off-by: Ross Zwisler <[email protected]>
> ---
>
> This was found in next-20151223.

Several people reported this and I was waiting for a proper
fix from Bamvor (as it is a false compile warning and doesn't
really indicate a real error) but now I'll apply this to
get rid of all the reports and patches filling my mailbox...

Merry Christmas!

Yours,
Linus Walleij