]> git.proxmox.com Git - mirror_ubuntu-bionic-kernel.git/commit
gpio: reject invalid gpio before getting gpio_desc
authorMasami Hiramatsu <mhiramat@kernel.org>
Wed, 2 Aug 2017 04:47:42 +0000 (13:47 +0900)
committerLinus Walleij <linus.walleij@linaro.org>
Mon, 14 Aug 2017 13:00:43 +0000 (15:00 +0200)
commit90b05b0598c698252d5f7dcdce335c5a546e9047
tree1ab8cbb4a65de9ec2ac18cc96e8c2976969cffec
parentef954844c7ace62f773f4f23e28d2d915adc419f
gpio: reject invalid gpio before getting gpio_desc

Check user-given gpio number and reject it before
calling gpio_to_desc() because gpio_to_desc() is
for kernel driver and it expects given gpio number
is valid (means 0 to 511).
If given number is invalid, gpio_to_desc() calls
WARN() and dump registers and stack for debug.
This means user can easily kick WARN() just by
writing invalid gpio number (e.g. 512) to
/sys/class/gpio/export.

Fixes: 0e9a5edf5d01 ("gpio: fix deferred probe detection for legacy API")
Signed-off-by: Masami Hiramatsu <mhiramat@kernel.org>
Reviewed-by: Andy Shevchenko <andy.shevchenko@gmail.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
drivers/gpio/gpiolib-sysfs.c