[PATCH 4/9] gpiolib: use gpio_chips list in sysfs ops

Grant Likely grant.likely at secretlab.ca
Sat Feb 9 04:37:53 EST 2013


On Tue, 5 Feb 2013 18:15:54 +0100, Linus Walleij <linus.walleij at linaro.org> wrote:
> On Sat, Feb 2, 2013 at 5:29 PM, Alexandre Courbot <acourbot at nvidia.com> wrote:
> 
> > This makes the code both simpler and faster compared to parsing the GPIO
> > number space.
> >
> > Signed-off-by: Alexandre Courbot <acourbot at nvidia.com>
> 
> Reviewed-by: Linus Walleij <linus.walleij at linaro.org>

Applied, thanks.

However, this code is incorrect (it was incorrect before you touched it,
so not your fault). Moving it to a list makes it a lot worse though
because it introduces the possibility of dereferencing an invalid
pointer. The hooks need to grab the spinlock before parsing the list.

I've got a patch which I'll post. I'd appreciate it if you can test
also.

In actual fact, I'd like to replace the spinlock with a mutex, but that
requires some auditing to make sure there aren't any users from an
atomic context.

g.




More information about the linux-arm-kernel mailing list