From: Kent Gibson <warthog618@gmail.com>
To: Andy Shevchenko <andy@kernel.org>
Cc: linux-kernel@vger.kernel.org, linux-gpio@vger.kernel.org,
brgl@bgdev.pl, linus.walleij@linaro.org
Subject: Re: [PATCH v2 4/5] gpiolib: cdev: reduce locking in gpio_desc_to_lineinfo()
Date: Thu, 14 Dec 2023 23:53:10 +0800 [thread overview]
Message-ID: <ZXsk5hOxXM7oJIy4@rigel> (raw)
In-Reply-To: <ZXsjbvUYJGmGU6bs@rigel>
On Thu, Dec 14, 2023 at 11:46:54PM +0800, Kent Gibson wrote:
> On Thu, Dec 14, 2023 at 11:34:44PM +0800, Kent Gibson wrote:
> > On Thu, Dec 14, 2023 at 05:27:29PM +0200, Andy Shevchenko wrote:
> > > On Thu, Dec 14, 2023 at 11:19:01PM +0800, Kent Gibson wrote:
> > > > On Thu, Dec 14, 2023 at 05:10:23PM +0200, Andy Shevchenko wrote:
> > > > > On Thu, Dec 14, 2023 at 05:58:13PM +0800, Kent Gibson wrote:
> > > > > > Reduce the time holding the gpio_lock by snapshotting the desc flags,
> > > > > > rather than testing them individually while holding the lock.
> > > > > >
> > > > > > Accept that the calculation of the used field is inherently racy, and
> > > > > > only check the availability of the line from pinctrl if other checks
> > > > > > pass, so avoiding the check for lines that are otherwise in use.
> > >
> > > ...
> > >
> > > > > > - spin_lock_irqsave(&gpio_lock, flags);
> > > > >
> > > > > Shouldn't this be covered by patch 1 (I mean conversion to scoped_guard()
> > > > > instead of spinlock)?
> > > > >
> > > >
> > > > Read the cover letter.
> > > > Doing that made the change larger, as flags gets removed then restored.
> > > > I had also thought the flag tests would get indented then unindented, but
> > > > if we use guard() the indentation should remain unchanged.
> > >
> > > I'm fine with that as I pointed out (have you received that mail? I had
> > > problems with my mail server) the dflags is better semantically, so restoration
> > > with _different_ name is fine.
> > >
> >
> > I have noted that some of your replies have been delayed, and I can't be sure
> > of what I might not've received. I can't say I've seen one that mentions the
> > dflags name being preferable.
> >
> > I prefer the plain flags name, if there is only one flag variable in the
> > function.
> >
> > > > Can do it in 1 if you are happy with the flags declaration being
> > > > removed in patch 1 and restored in 4.
> > >
> > > Definitely.
> > >
> >
> > Ok will re-arrange in v3.
> >
>
> Hang on - patch 4 has to use a scoped_guard(), so are you ok for patch 1
> to introduce a guard(), to avoid changing the indentation, only to
> replace it with a scoped_guard(), to perform the tests after releasing
> the lock, in patch 4?
>
Alternatively, I can move patch 4 to the top of the series.
Cheers,
Kent.
next prev parent reply other threads:[~2023-12-14 15:53 UTC|newest]
Thread overview: 35+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-12-14 9:58 [PATCH v2 0/5] gpiolib: cdev: relocate debounce_period_us Kent Gibson
2023-12-14 9:58 ` [PATCH v2 1/5] gpiolib: cdev: adopt scoped_guard() Kent Gibson
2023-12-14 11:50 ` Kent Gibson
2023-12-14 14:53 ` Andy Shevchenko
2023-12-14 14:53 ` Andy Shevchenko
2023-12-14 9:58 ` [PATCH v2 2/5] gpiolib: cdev: relocate debounce_period_us from struct gpio_desc Kent Gibson
2023-12-14 14:29 ` Bartosz Golaszewski
2023-12-14 14:45 ` Kent Gibson
2023-12-14 14:56 ` Bartosz Golaszewski
2023-12-14 15:08 ` Kent Gibson
2023-12-14 15:03 ` Andy Shevchenko
2023-12-14 15:09 ` Andy Shevchenko
2023-12-14 16:14 ` Kent Gibson
2023-12-14 16:41 ` Andy Shevchenko
2023-12-14 21:06 ` Bartosz Golaszewski
2023-12-15 1:04 ` Kent Gibson
2023-12-15 8:07 ` Bartosz Golaszewski
2023-12-15 8:15 ` Kent Gibson
2023-12-15 16:31 ` Andy Shevchenko
2023-12-14 9:58 ` [PATCH v2 3/5] gpiolib: remove " Kent Gibson
2023-12-14 9:58 ` [PATCH v2 4/5] gpiolib: cdev: reduce locking in gpio_desc_to_lineinfo() Kent Gibson
2023-12-14 15:10 ` Andy Shevchenko
2023-12-14 15:19 ` Kent Gibson
2023-12-14 15:27 ` Andy Shevchenko
2023-12-14 15:34 ` Kent Gibson
2023-12-14 15:46 ` Kent Gibson
2023-12-14 15:52 ` Andy Shevchenko
2023-12-14 15:53 ` Kent Gibson [this message]
2023-12-14 16:02 ` Andy Shevchenko
2023-12-14 15:50 ` Andy Shevchenko
2023-12-14 16:05 ` Kent Gibson
2023-12-14 9:58 ` [PATCH v2 5/5] gpiolib: cdev: improve documentation of get/set values Kent Gibson
2023-12-14 15:12 ` Andy Shevchenko
2023-12-14 15:23 ` Kent Gibson
2023-12-14 15:27 ` Andy Shevchenko
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=ZXsk5hOxXM7oJIy4@rigel \
--to=warthog618@gmail.com \
--cc=andy@kernel.org \
--cc=brgl@bgdev.pl \
--cc=linus.walleij@linaro.org \
--cc=linux-gpio@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.