Messages in this thread Patch in this message |  | | From | Bartosz Golaszewski <> | Subject | [PATCH v4 06/13] gpiolib: use gpiochip_get_desc() in gpio_ioctl() | Date | Tue, 24 Dec 2019 13:07:02 +0100 |
| |
From: Bartosz Golaszewski <bgolaszewski@baylibre.com>
Unduplicate the offset check by simply calling gpiochip_get_desc() and checking its return value.
Signed-off-by: Bartosz Golaszewski <bgolaszewski@baylibre.com> Reviewed-by: Andy Shevchenko <andy.shevchenko@gmail.com> --- drivers/gpio/gpiolib.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-)
diff --git a/drivers/gpio/gpiolib.c b/drivers/gpio/gpiolib.c index 007f16fdf782..81d5eda4de7d 100644 --- a/drivers/gpio/gpiolib.c +++ b/drivers/gpio/gpiolib.c @@ -1175,10 +1175,11 @@ static long gpio_ioctl(struct file *filp, unsigned int cmd, unsigned long arg) if (copy_from_user(&lineinfo, ip, sizeof(lineinfo))) return -EFAULT; - if (lineinfo.line_offset >= gdev->ngpio) - return -EINVAL; - desc = &gdev->descs[lineinfo.line_offset]; + desc = gpiochip_get_desc(chip, lineinfo.line_offset); + if (IS_ERR(desc)) + return PTR_ERR(desc); + if (desc->name) { strncpy(lineinfo.name, desc->name, sizeof(lineinfo.name)); -- 2.23.0
|  |