[Letux-kernel] BUG: drivers/pinctrl/core: races in pinctrl_groups and deferred probing

Tony Lindgren tony at atomide.com
Mon Jun 18 11:14:33 CEST 2018

* Andy Shevchenko <andy.shevchenko at gmail.com> [180618 08:25]:
> On Sat, Jun 16, 2018 at 2:08 PM H. Nikolaus Schaller <hns at goldelico.com> wrote:
> > But it looks as if we still have duplicate assignments by deferred probing, i.e. some cleanup is
> > missing (or is this intended behaviour?).
> > But I think the fundamental problem is that the same driver assigns multiple slots if
> > probing is deferred.
> Indeed.
> I think there is a simple way to clean up pinctrl stuff on failed probe. See
> https://elixir.bootlin.com/linux/v4.18-rc1/source/drivers/base/dd.c#L416
> We only bind pins, and do not perform any actions when failure happens later on.

Yup seems like a good approach. I'll take a look if we can just
check if the function or group name already exists and return
the existing selector in that case.



More information about the Letux-kernel mailing list