Re: [PATCH] gpiolib: Keep returning EPROBE_DEFER when we should

From: Maxime Ripard
Date: Wed Feb 21 2018 - 04:16:43 EST


On Wed, Feb 21, 2018 at 09:17:15AM +0100, Linus Walleij wrote:
> On Wed, Feb 21, 2018 at 9:11 AM, Maxime Ripard
> <maxime.ripard@xxxxxxxxxxx> wrote:
>
> > Commits c85823390215 ("gpio: of: Support SPI nonstandard GPIO properties")
> > and 6a537d48461d ("gpio: of: Support regulator nonstandard GPIO
> > properties") have introduced a regression in the way error codes from
> > of_get_named_gpiod_flags are handled.
> >
> > Previously, those errors codes were returned immediately, but the two
> > commits mentioned above are now overwriting the error pointer, meaning that
> > whatever value has been returned will be dropped in favor of whatever the
> > two new functions will return.
> >
> > This might not be a big deal except for EPROBE_DEFER, on which GPIOlib
> > customers will depend on, and that will now be returned as an hard error
> > which means that they will not probe anymore, instead of gently deferring
> > their probe.
> >
> > Since EPROBE_DEFER basically means that we have found a valid property but
> > there was no GPIO controller registered to handle it, fix this issues by
> > returning it as soon as we encounter it.
> >
> > Fixes: c85823390215 ("gpio: of: Support SPI nonstandard GPIO properties")
> > Fixes: 6a537d48461d ("gpio: of: Support regulator nonstandard GPIO properties")
> > Signed-off-by: Maxime Ripard <maxime.ripard@xxxxxxxxxxx>
>
> Whoops sorry for that, patch applied for fixes.
>
> Thanks you for your help!

This is slightly embarrassing, but that patch doesn't actually fix
anything. I tried to be smart and rework it to look nicer, and
obviously failed.

Can you squash
http://code.bulix.org/z1vkt1-286673

in the commit?

Maxime

--
Maxime Ripard, Bootlin (formerly Free Electrons)
Embedded Linux and Kernel engineering
https://bootlin.com

Attachment: signature.asc
Description: PGP signature