Re: [PATCH] iio: chemical: scd30: Use devm_mutex_init() over non-devm mutex_init()

From: Andy Shevchenko

Date: Thu Jun 04 2026 - 16:54:35 EST


On Thu, Jun 04, 2026 at 08:20:25AM -0500, Maxwell Doose wrote:
> On Thu, Jun 4, 2026 at 2:43 AM Andy Shevchenko
> <andriy.shevchenko@xxxxxxxxx> wrote:
> > On Wed, Jun 03, 2026 at 12:27:18PM -0500, Maxwell Doose wrote:
> > > On Wed, Jun 3, 2026 at 11:44 AM Jonathan Cameron <jic23@xxxxxxxxxx> wrote:
> > > > On Wed, 3 Jun 2026 09:51:33 -0500
> > > > Maxwell Doose <m32285159@xxxxxxxxx> wrote:

...

> > > > > + ret = devm_mutex_init(dev, &state->lock);
> > > > > + if (ret)
> > > > > + return dev_err_probe(dev, ret, "Failed to init mutex\n");
> > > > The only thing it can return is -ENOMEM I think. Which doesn't print anything
> > > > so
> > > > if (ret)
> > > > return ret;
> > > >
> > > > is enough.
> > >
> > > If I'm not wrong (and after a quick google search), I think it also
> > > may return -EINVAL but then that means the device struct is invalid.
> >
> > What?!
> >
>
> Then I was either misled or I'm just stupid :(
>
> > > Still may be worth doing dev_err_probe(dev, ret, "Failed to init mutex
> > > with error %d", ret); or something along those lines. If you want I
> > > can get this out today or I can also wait for more reviewer feedback,
> > > but your recommended changes seem pretty simple. TBH though I'd still
> > > argue for the case of either dev_err_probe() or dev_warn() since not
> > > having an initialized mutex is certainly an error.
> >
> > I am on the side of dropping the message altogether. Invalid dev here is
> > nonsense. Just read the code.
>
> All of these changes have been made in v2.

I am not sure I follow. I was specifically talking about implementation of
dev_mutex_init().

--
With Best Regards,
Andy Shevchenko