Linux IIO development
 help / color / mirror / Atom feed
From: Jonathan Cameron <jic23@kernel.org>
To: Matheus Giarola <matheustpgiarola@gmail.com>
Cc: lars@metafoo.de, Michael.Hennerich@analog.com,
	dlechner@baylibre.com, nuno.sa@analog.com, andy@kernel.org,
	linux-iio@vger.kernel.org, linux-kernel@vger.kernel.org,
	matheusgiarola@usp.br, arthurpilone@usp.br,
	davidbtadokoro@ime.usp.br
Subject: Re: [PATCH] iio: adc: ad7280a: replace mutex_lock() with guard(mutex)
Date: Wed, 25 Mar 2026 20:32:44 +0000	[thread overview]
Message-ID: <20260325203244.4dac3788@jic23-huawei> (raw)
In-Reply-To: <CABGH8=az2T+GMy55_zX-C-9=rMauaWvqGBF=+VCoRBSCDTmnHQ@mail.gmail.com>

On Wed, 25 Mar 2026 16:21:04 -0300
Matheus Giarola <matheustpgiarola@gmail.com> wrote:

> On Sat, Mar 21, 2026 at 12:55 PM Jonathan Cameron <jic23@kernel.org> wrote:
> >
> > On Thu, 19 Mar 2026 15:46:15 -0300
> > Matheus Giarola <matheustpgiarola@gmail.com> wrote:
> >  
> > > Use guard(mutex) instead of mutex_lock()/mutex_unlock(),
> > > ensuring the mutex is released automatically when leaving
> > > the function scope. The change improves error handling and
> > > avoids issues such as missing unlocks. It also simplifies the
> > > code by removing 'err_unlock' label and several mutex_unlock()
> > > calls.
> > >
> > > Signed-off-by: Matheus Giarola <matheusgiarola@usp.br>  
> > Hi Matheus.
> >
> >  
> > > @@ -885,13 +875,12 @@ static int ad7280_read_raw(struct iio_dev *indio_dev,
> > >
> > >       switch (m) {
> > >       case IIO_CHAN_INFO_RAW:
> > > -             mutex_lock(&st->lock);
> > > +             guard(mutex)(&st->lock);  
> >
> > Scope missing...
> >
> > Thanks,
> >
> > Jonathan  
> 
> Hi Jonathan,
> 
> Thank you for the review and pointing out the missing scope, I'll fix
> it by using
> scoped_guard() to ensure the lock is released at the right time.
nope.  Whilst that would be correct it's not the nicest solution.
Instead do what you'd do if there was a variable declared in a case
block..
	case IIO_CHAN_INFO_RAW: {
		guard(...)(..);
...



	}

Under the hood guard is declaring a local variable.

> 
> I'm a bit busy with university work this week, so at most by next week I'll send
> a v2 of this patch.
> 
> Best regards,
> 
> Matheus
> >  
> > >               if (chan->address == AD7280A_ALL_CELLS)
> > >                       ret = ad7280_read_all_channels(st, st->scan_cnt, NULL);
> > >               else
> > >                       ret = ad7280_read_channel(st, chan->address >> 8,
> > >                                                 chan->address & 0xFF);
> > > -             mutex_unlock(&st->lock);
> > >
> > >               if (ret < 0)
> > >                       return ret;  
> >  


      reply	other threads:[~2026-03-25 20:32 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-03-19 18:46 [PATCH] iio: adc: ad7280a: replace mutex_lock() with guard(mutex) Matheus Giarola
2026-03-20 19:53 ` kernel test robot
2026-03-20 20:16 ` kernel test robot
2026-03-21 15:55 ` Jonathan Cameron
2026-03-25 19:21   ` Matheus Giarola
2026-03-25 20:32     ` Jonathan Cameron [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20260325203244.4dac3788@jic23-huawei \
    --to=jic23@kernel.org \
    --cc=Michael.Hennerich@analog.com \
    --cc=andy@kernel.org \
    --cc=arthurpilone@usp.br \
    --cc=davidbtadokoro@ime.usp.br \
    --cc=dlechner@baylibre.com \
    --cc=lars@metafoo.de \
    --cc=linux-iio@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=matheusgiarola@usp.br \
    --cc=matheustpgiarola@gmail.com \
    --cc=nuno.sa@analog.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox