Message ID | 20250305102710.52762-1-brgl@bgdev.pl (mailing list archive) |
---|---|
State | New |
Headers | show |
Series | pinctrl: spacemit: destroy mutex at driver detach | expand |
Context | Check | Description |
---|---|---|
bjorn/pre-ci_am | success | Success |
bjorn/build-rv32-defconfig | success | build-rv32-defconfig |
bjorn/build-rv64-clang-allmodconfig | success | build-rv64-clang-allmodconfig |
bjorn/build-rv64-gcc-allmodconfig | success | build-rv64-gcc-allmodconfig |
bjorn/build-rv64-nommu-k210-defconfig | success | build-rv64-nommu-k210-defconfig |
bjorn/build-rv64-nommu-k210-virt | success | build-rv64-nommu-k210-virt |
bjorn/checkpatch | success | checkpatch |
bjorn/dtb-warn-rv64 | success | dtb-warn-rv64 |
bjorn/header-inline | success | header-inline |
bjorn/kdoc | success | kdoc |
bjorn/module-param | success | module-param |
bjorn/verify-fixes | success | verify-fixes |
bjorn/verify-signedoff | success | verify-signedoff |
On 11:27 Wed 05 Mar , Bartosz Golaszewski wrote: > From: Bartosz Golaszewski <bartosz.golaszewski@linaro.org> > > The mutex initialized in probe() is never cleaned up. Use > devm_mutex_init() to destroy it automatically. > Reviewed-by: Yixun Lan <dlan@gentoo.org> > Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org> > --- > drivers/pinctrl/spacemit/pinctrl-k1.c | 6 +++++- > 1 file changed, 5 insertions(+), 1 deletion(-) > > diff --git a/drivers/pinctrl/spacemit/pinctrl-k1.c b/drivers/pinctrl/spacemit/pinctrl-k1.c > index 59fd555ff38d..67e867b04a02 100644 > --- a/drivers/pinctrl/spacemit/pinctrl-k1.c > +++ b/drivers/pinctrl/spacemit/pinctrl-k1.c > @@ -9,6 +9,7 @@ > #include <linux/seq_file.h> > #include <linux/spinlock.h> > #include <linux/module.h> > +#include <linux/mutex.h> > > #include <linux/pinctrl/pinconf-generic.h> > #include <linux/pinctrl/pinconf.h> > @@ -749,7 +750,10 @@ static int spacemit_pinctrl_probe(struct platform_device *pdev) > pctrl->data = pctrl_data; > pctrl->dev = dev; > raw_spin_lock_init(&pctrl->lock); > - mutex_init(&pctrl->mutex); > + > + ret = devm_mutex_init(dev, &pctrl->mutex); > + if (ret) > + return ret; > > platform_set_drvdata(pdev, pctrl); > > -- > 2.45.2 >
Bartosz Golaszewski <brgl@bgdev.pl> writes: > From: Bartosz Golaszewski <bartosz.golaszewski@linaro.org> > > The mutex initialized in probe() is never cleaned up. Use > devm_mutex_init() to destroy it automatically. > > Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org> > --- Reviewed-by: Javier Martinez Canillas <javierm@redhat.com>
On Wed, Mar 5, 2025 at 11:27 AM Bartosz Golaszewski <brgl@bgdev.pl> wrote: > From: Bartosz Golaszewski <bartosz.golaszewski@linaro.org> > > The mutex initialized in probe() is never cleaned up. Use > devm_mutex_init() to destroy it automatically. > > Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org> Patch applied! Yours, Linus Walleij
diff --git a/drivers/pinctrl/spacemit/pinctrl-k1.c b/drivers/pinctrl/spacemit/pinctrl-k1.c index 59fd555ff38d..67e867b04a02 100644 --- a/drivers/pinctrl/spacemit/pinctrl-k1.c +++ b/drivers/pinctrl/spacemit/pinctrl-k1.c @@ -9,6 +9,7 @@ #include <linux/seq_file.h> #include <linux/spinlock.h> #include <linux/module.h> +#include <linux/mutex.h> #include <linux/pinctrl/pinconf-generic.h> #include <linux/pinctrl/pinconf.h> @@ -749,7 +750,10 @@ static int spacemit_pinctrl_probe(struct platform_device *pdev) pctrl->data = pctrl_data; pctrl->dev = dev; raw_spin_lock_init(&pctrl->lock); - mutex_init(&pctrl->mutex); + + ret = devm_mutex_init(dev, &pctrl->mutex); + if (ret) + return ret; platform_set_drvdata(pdev, pctrl);