Re: [PATCH] gpio / ACPI: Prevent potential wrap of GPIO value on OpRegion read

From: Linus Walleij
Date: Thu Apr 10 2014 - 12:24:38 EST


On Tue, Apr 1, 2014 at 12:03 PM, Mika Westerberg
<mika.westerberg@xxxxxxxxxxxxxxx> wrote:

> Dan Carpenter's static code checker reports:
>
> The patch 473ed7be0da0: "gpio / ACPI: Add support for ACPI GPIO
> operation regions" from Mar 14, 2014, leads to the following static
> checker warning:
>
> drivers/gpio/gpiolib-acpi.c:454 acpi_gpio_adr_space_handler()
> warn: should 'gpiod_get_raw_value(desc) << i' be a 64 bit type?
>
> This is due the fact that *value is of type u64 and gpiod_get_raw_value()
> returns int. Since i can be larger than 31, it is possible that the value
> returned gets wrapped.
>
> Fix this by casting the return of gpiod_get_raw_value() to u64 first before
> shift.
>
> Reported-by: Dan Carpenter <dan.carpenter@xxxxxxxxxx>
> Signed-off-by: Mika Westerberg <mika.westerberg@xxxxxxxxxxxxxxx>

Patch applied for fixes.

Yours,
Linus Walleij
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/