2024-03-20 07:25:56

by Peng Fan (OSS)

[permalink] [raw]
Subject: [PATCH V2] gpiolib: use dev_err() when gpiod_configure_flags failed

From: Peng Fan <[email protected]>

When gpio-ranges property was missed to be added in the gpio node,
using dev_err() to show an error message will helping to locate issues
easier.

Signed-off-by: Peng Fan <[email protected]>
---

V2:
Update commit log

drivers/gpio/gpiolib.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/gpio/gpiolib.c b/drivers/gpio/gpiolib.c
index ce94e37bcbee..37fe9db0bd74 100644
--- a/drivers/gpio/gpiolib.c
+++ b/drivers/gpio/gpiolib.c
@@ -4233,7 +4233,7 @@ struct gpio_desc *gpiod_find_and_request(struct device *consumer,

ret = gpiod_configure_flags(desc, con_id, lookupflags, flags);
if (ret < 0) {
- dev_dbg(consumer, "setup of GPIO %s failed\n", con_id);
+ dev_err(consumer, "setup of GPIO %s failed: %d\n", con_id, ret);
gpiod_put(desc);
return ERR_PTR(ret);
}
--
2.37.1



2024-03-20 10:35:16

by Andy Shevchenko

[permalink] [raw]
Subject: Re: [PATCH V2] gpiolib: use dev_err() when gpiod_configure_flags failed

On Wed, Mar 20, 2024 at 9:25 AM Peng Fan (OSS) <[email protected]> wrote:
>
> From: Peng Fan <[email protected]>
>
> When gpio-ranges property was missed to be added in the gpio node,
> using dev_err() to show an error message will helping to locate issues
> easier.

I'm not convinced, so not my call to approve / reject, but see a remark below.

..

> ret = gpiod_configure_flags(desc, con_id, lookupflags, flags);
> if (ret < 0) {
> - dev_dbg(consumer, "setup of GPIO %s failed\n", con_id);
> + dev_err(consumer, "setup of GPIO %s failed: %d\n", con_id, ret);
> gpiod_put(desc);
> return ERR_PTR(ret);

While at it, can you move it to be after the gpiod_put()?

> }

--
With Best Regards,
Andy Shevchenko

2024-03-20 11:09:37

by Peng Fan

[permalink] [raw]
Subject: RE: [PATCH V2] gpiolib: use dev_err() when gpiod_configure_flags failed

> Subject: Re: [PATCH V2] gpiolib: use dev_err() when gpiod_configure_flags
> failed
>
> On Wed, Mar 20, 2024 at 9:25 AM Peng Fan (OSS) <[email protected]>
> wrote:
> >
> > From: Peng Fan <[email protected]>
> >
> > When gpio-ranges property was missed to be added in the gpio node,
> > using dev_err() to show an error message will helping to locate issues
> > easier.
>
> I'm not convinced, so not my call to approve / reject, but see a remark below.

You mean dev_err not help or else?

>
> ...
>
> > ret = gpiod_configure_flags(desc, con_id, lookupflags, flags);
> > if (ret < 0) {
> > - dev_dbg(consumer, "setup of GPIO %s failed\n", con_id);
> > + dev_err(consumer, "setup of GPIO %s failed: %d\n",
> > + con_id, ret);
> > gpiod_put(desc);
> > return ERR_PTR(ret);
>
> While at it, can you move it to be after the gpiod_put()?

Does it matter?

Thanks,
Peng.

>
> > }
>
> --
> With Best Regards,
> Andy Shevchenko

2024-03-20 11:24:22

by Andy Shevchenko

[permalink] [raw]
Subject: Re: [PATCH V2] gpiolib: use dev_err() when gpiod_configure_flags failed

On Wed, Mar 20, 2024 at 11:07:40AM +0000, Peng Fan wrote:
> > On Wed, Mar 20, 2024 at 9:25 AM Peng Fan (OSS) <[email protected]>
> > wrote:

..

> > > When gpio-ranges property was missed to be added in the gpio node,
> > > using dev_err() to show an error message will helping to locate issues
> > > easier.
> >
> > I'm not convinced, so not my call to approve / reject, but see a remark below.
>
> You mean dev_err not help or else?

Moving it to error level.
Usually developers enable CONFIG_DEBUG_GPIO for these messages to appear.

..

> > > ret = gpiod_configure_flags(desc, con_id, lookupflags, flags);
> > > if (ret < 0) {
> > > - dev_dbg(consumer, "setup of GPIO %s failed\n", con_id);
> > > + dev_err(consumer, "setup of GPIO %s failed: %d\n",
> > > + con_id, ret);
> > > gpiod_put(desc);
> > > return ERR_PTR(ret);
> >
> > While at it, can you move it to be after the gpiod_put()?
>
> Does it matter?

Yes, the system gives resource back as soon as possible.

--
With Best Regards,
Andy Shevchenko



2024-03-21 05:40:22

by Peng Fan

[permalink] [raw]
Subject: RE: [PATCH V2] gpiolib: use dev_err() when gpiod_configure_flags failed

> Subject: Re: [PATCH V2] gpiolib: use dev_err() when gpiod_configure_flags
> failed
>
> On Wed, Mar 20, 2024 at 11:07:40AM +0000, Peng Fan wrote:
> > > On Wed, Mar 20, 2024 at 9:25 AM Peng Fan (OSS)
> > > <[email protected]>
> > > wrote:
>
> ...
>
> > > > When gpio-ranges property was missed to be added in the gpio node,
> > > > using dev_err() to show an error message will helping to locate
> > > > issues easier.
> > >
> > > I'm not convinced, so not my call to approve / reject, but see a remark
> below.
> >
> > You mean dev_err not help or else?
>
> Moving it to error level.
> Usually developers enable CONFIG_DEBUG_GPIO for these messages to
> appear.

But this is a error log. Let's leave this to gpio maintainers.

>
> ...
>
> > > > ret = gpiod_configure_flags(desc, con_id, lookupflags, flags);
> > > > if (ret < 0) {
> > > > - dev_dbg(consumer, "setup of GPIO %s failed\n", con_id);
> > > > + dev_err(consumer, "setup of GPIO %s failed: %d\n",
> > > > + con_id, ret);
> > > > gpiod_put(desc);
> > > > return ERR_PTR(ret);
> > >
> > > While at it, can you move it to be after the gpiod_put()?
> >
> > Does it matter?
>
> Yes, the system gives resource back as soon as possible.

Got it.

Thanks,
Peng.

>
> --
> With Best Regards,
> Andy Shevchenko
>

2024-03-21 15:41:36

by Bartosz Golaszewski

[permalink] [raw]
Subject: Re: [PATCH V2] gpiolib: use dev_err() when gpiod_configure_flags failed

On Thu, Mar 21, 2024 at 6:40 AM Peng Fan <[email protected]> wrote:
> > > >
> > > > I'm not convinced, so not my call to approve / reject, but see a remark
> > below.
> > >
> > > You mean dev_err not help or else?
> >
> > Moving it to error level.
> > Usually developers enable CONFIG_DEBUG_GPIO for these messages to
> > appear.
>
> But this is a error log. Let's leave this to gpio maintainers.
>

I'm fine with this change.

> >
> > ...
> >
> > > > > ret = gpiod_configure_flags(desc, con_id, lookupflags, flags);
> > > > > if (ret < 0) {
> > > > > - dev_dbg(consumer, "setup of GPIO %s failed\n", con_id);
> > > > > + dev_err(consumer, "setup of GPIO %s failed: %d\n",
> > > > > + con_id, ret);
> > > > > gpiod_put(desc);
> > > > > return ERR_PTR(ret);
> > > >
> > > > While at it, can you move it to be after the gpiod_put()?
> > >
> > > Does it matter?
> >
> > Yes, the system gives resource back as soon as possible.
>
> Got it.
>

Please change this and resend it.

Bart