Re: [PATCH] gpiolib: don't call sleeping functions with a spinlock taken

From: Linus Walleij
Date: Thu Apr 16 2020 - 07:22:42 EST


On Tue, Apr 14, 2020 at 2:27 PM Bartosz Golaszewski
<bgolaszewski@xxxxxxxxxxxx> wrote:
> wt., 14 kwi 2020 o 14:00 Linus Walleij <linus.walleij@xxxxxxxxxx> napisaÅ(a):
> >
> > On Fri, Mar 20, 2020 at 10:31 AM Bartosz Golaszewski <brgl@xxxxxxxx> wrote:
> >
> > > From: Bartosz Golaszewski <bgolaszewski@xxxxxxxxxxxx>
> > >
> > > We must not call pinctrl_gpio_can_use_line() with the gpio_lock taken
> > > as it takes a mutex internally. Let's move the call before taking the
> > > spinlock and store the return value.
> > >
> > > This isn't perfect - there's a moment between calling
> > > pinctrl_gpio_can_use_line() and taking the spinlock where the situation
> > > can change but it isn't a regression either: previously this part wasn't
> > > protected at all and it only affects the information user-space is
> > > seeing.
> > >
> > > Reported-by: Geert Uytterhoeven <geert@xxxxxxxxxxxxxx>
> > > Fixes: d2ac25798208 ("gpiolib: provide a dedicated function for setting lineinfo")
> > > Signed-off-by: Bartosz Golaszewski <bgolaszewski@xxxxxxxxxxxx>
> >
> > I'm sorry that I lost track of this patch :(
> >
> > Do we still need something like this or has it been fixed
> > by some other patches?
> >
> > Yours,
> > Linus Walleij
>
> Nope, this is still an issue. Do you have a better idea than mine?

Nope, can you just queue it in your tree?
Acked-by: Linus Walleij <linus.walleij@xxxxxxxxxx>

Yours,
Linus Walleij