]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
pinctrl: aw9523: fix mutex unlock in error path
authorBartosz Golaszewski <bartosz.golaszewski@linaro.org>
Thu, 19 Jun 2025 17:35:37 +0000 (19:35 +0200)
committerLinus Walleij <linus.walleij@linaro.org>
Tue, 24 Jun 2025 19:11:02 +0000 (21:11 +0200)
We must unlock the mutex *after* the `out` label or we'd trigger a
deadlock in error path.

Fixes: dffe286e2428 ("pinctrl: aw9523: use new GPIO line value setter callbacks")
Reported-by: kernel test robot <lkp@intel.com>
Reported-by: Dan Carpenter <dan.carpenter@linaro.org>
Closes: https://lore.kernel.org/r/202506191952.A03cvn22-lkp@intel.com/
Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
Link: https://lore.kernel.org/20250619173537.64298-1-brgl@bgdev.pl
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
drivers/pinctrl/pinctrl-aw9523.c

index c844540384198f40f1142528d815fb6e4d5194b7..2935b2cceb03eedbb03e6f81355fbe328a979c5f 100644 (file)
@@ -652,9 +652,9 @@ static int aw9523_gpio_set_multiple(struct gpio_chip *chip,
                if (ret)
                        goto out;
        }
-       mutex_unlock(&awi->i2c_lock);
 
 out:
+       mutex_unlock(&awi->i2c_lock);
        return ret;
 }