On Thu, 21 Sep 2023, Chunyan Zhang wrote: > In sc27xx_led_probe() there's one error branch missing mutex_destory() > after mutex_init(), it seems that we should add it since other branches > which follow it called mutex_destoy() before return failure. Wouldn't it be better to move the mutex_init() to the end of .probe()? > Fixes: e081c49e30ec ("leds: Add Spreadtrum SC27xx breathing light controller driver") > Signed-off-by: Chunyan Zhang <chunyan.zhang@xxxxxxxxxx> > --- > drivers/leds/leds-sc27xx-bltc.c | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/drivers/leds/leds-sc27xx-bltc.c b/drivers/leds/leds-sc27xx-bltc.c > index e199ea15e406..122094bbf444 100644 > --- a/drivers/leds/leds-sc27xx-bltc.c > +++ b/drivers/leds/leds-sc27xx-bltc.c > @@ -300,6 +300,7 @@ static int sc27xx_led_probe(struct platform_device *pdev) > priv->base = base; > priv->regmap = dev_get_regmap(dev->parent, NULL); > if (!priv->regmap) { > + mutex_destroy(&priv->lock); > err = -ENODEV; > dev_err(dev, "failed to get regmap: %d\n", err); > return err; > -- > 2.41.0 > -- Lee Jones [李琼斯]