diff --git a/drivers/pinctrl/core.c b/drivers/pinctrl/core.c index b50968f0ce2e14ccf8415f6aaa795dd4e4a5038e..f8952d01fc2c46ece326c049fca65cc41cad9d0e 100644 --- a/drivers/pinctrl/core.c +++ b/drivers/pinctrl/core.c @@ -1078,8 +1078,8 @@ static struct pinctrl *create_pinctrl(struct device *dev, * an -EPROBE_DEFER later, as that is the worst case. */ if (ret == -EPROBE_DEFER) { - pinctrl_free(p, false); mutex_unlock(&pinctrl_maps_mutex); + pinctrl_free(p, false); return ERR_PTR(ret); } }