diff mbox series

gpiolib: gpio_name_to_desc: factor out !name check

Message ID 64270a8cc4bfca77ef4e280e5ab4623f4525ff39.1584290011.git.mirq-linux@rere.qmqm.pl
State New
Headers show
Series gpiolib: gpio_name_to_desc: factor out !name check | expand

Commit Message

Michał Mirosław March 15, 2020, 4:34 p.m. UTC
Since name == NULL can't ever match, move the check out of
IRQ-disabled region.

Signed-off-by: Michał Mirosław <mirq-linux@rere.qmqm.pl>
---
 drivers/gpio/gpiolib.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

Comments

Bartosz Golaszewski March 16, 2020, 10:28 a.m. UTC | #1
niedz., 15 mar 2020 o 17:34 Michał Mirosław <mirq-linux@rere.qmqm.pl>
napisał(a):
>
> Since name == NULL can't ever match, move the check out of
> IRQ-disabled region.
>
> Signed-off-by: Michał Mirosław <mirq-linux@rere.qmqm.pl>
> ---
>  drivers/gpio/gpiolib.c | 5 ++++-
>  1 file changed, 4 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/gpio/gpiolib.c b/drivers/gpio/gpiolib.c
> index 175c6363cf61..20fbeffbdd91 100644
> --- a/drivers/gpio/gpiolib.c
> +++ b/drivers/gpio/gpiolib.c
> @@ -301,6 +301,9 @@ static struct gpio_desc *gpio_name_to_desc(const char * const name)
>         struct gpio_device *gdev;
>         unsigned long flags;
>
> +       if (!name)
> +               return NULL;
> +
>         spin_lock_irqsave(&gpio_lock, flags);
>
>         list_for_each_entry(gdev, &gpio_devices, list) {
> @@ -309,7 +312,7 @@ static struct gpio_desc *gpio_name_to_desc(const char * const name)
>                 for (i = 0; i != gdev->ngpio; ++i) {
>                         struct gpio_desc *desc = &gdev->descs[i];
>
> -                       if (!desc->name || !name)
> +                       if (!desc->name)
>                                 continue;
>
>                         if (!strcmp(desc->name, name)) {
> --
> 2.20.1
>

Patch applied, thanks!

Bartosz
diff mbox series

Patch

diff --git a/drivers/gpio/gpiolib.c b/drivers/gpio/gpiolib.c
index 175c6363cf61..20fbeffbdd91 100644
--- a/drivers/gpio/gpiolib.c
+++ b/drivers/gpio/gpiolib.c
@@ -301,6 +301,9 @@  static struct gpio_desc *gpio_name_to_desc(const char * const name)
 	struct gpio_device *gdev;
 	unsigned long flags;
 
+	if (!name)
+		return NULL;
+
 	spin_lock_irqsave(&gpio_lock, flags);
 
 	list_for_each_entry(gdev, &gpio_devices, list) {
@@ -309,7 +312,7 @@  static struct gpio_desc *gpio_name_to_desc(const char * const name)
 		for (i = 0; i != gdev->ngpio; ++i) {
 			struct gpio_desc *desc = &gdev->descs[i];
 
-			if (!desc->name || !name)
+			if (!desc->name)
 				continue;
 
 			if (!strcmp(desc->name, name)) {