2014-07-04 07:04:38

by Varka Bhadram

[permalink] [raw]
Subject: [PATCH v2] drivers/gpio/gpio-sch311x: check return value of gpiochip_remove()

This patch eliminates the following warning

drivers/gpio/gpio-sch311x.c: In function ‘sch311x_gpio_probe’:
drivers/gpio/gpio-sch311x.c:286:18: warning: ignoring return value of ‘gpiochip_remove’, declared with attribute warn_unused_result

Signed-off-by: Varka Bhadram <[email protected]>
---
drivers/gpio/gpio-sch311x.c | 11 ++++++++---
1 file changed, 8 insertions(+), 3 deletions(-)

diff --git a/drivers/gpio/gpio-sch311x.c b/drivers/gpio/gpio-sch311x.c
index f942b80..74282b9 100644
--- a/drivers/gpio/gpio-sch311x.c
+++ b/drivers/gpio/gpio-sch311x.c
@@ -232,7 +232,7 @@ static int sch311x_gpio_probe(struct platform_device *pdev)
struct sch311x_pdev_data *pdata = pdev->dev.platform_data;
struct sch311x_gpio_priv *priv;
struct sch311x_gpio_block *block;
- int err, i;
+ int err, i, ret = 0;

/* we can register all GPIO data registers at once */
if (!request_region(pdata->runtime_reg + GP1, 6, DRV_NAME)) {
@@ -282,8 +282,13 @@ static int sch311x_gpio_probe(struct platform_device *pdev)
exit_err:
release_region(pdata->runtime_reg + GP1, 6);
/* release already registered chips */
- for (--i; i >= 0; i--)
- gpiochip_remove(&priv->blocks[i].chip);
+ for (--i; i >= 0; i--) {
+ ret = gpiochip_remove(&priv->blocks[i].chip);
+
+ WARN(ret, "%s(): gpiochip_remove() failed, ret=%d\n",
+ __func__, ret);
+ }
+
return err;
}

--
1.7.9.5


2014-07-06 09:23:11

by Alexandre Courbot

[permalink] [raw]
Subject: Re: [PATCH v2] drivers/gpio/gpio-sch311x: check return value of gpiochip_remove()

On Fri, Jul 4, 2014 at 4:02 PM, Varka Bhadram <[email protected]> wrote:
> This patch eliminates the following warning
>
> drivers/gpio/gpio-sch311x.c: In function ‘sch311x_gpio_probe’:
> drivers/gpio/gpio-sch311x.c:286:18: warning: ignoring return value of ‘gpiochip_remove’, declared with attribute warn_unused_result

gpiochip_remove() is to have its return value set to void in another
patch, so I'm not sure we need this one in the meantime?

2014-07-06 13:23:24

by Varka Bhadram

[permalink] [raw]
Subject: Re: [PATCH v2] drivers/gpio/gpio-sch311x: check return value of gpiochip_remove()

Hi,

On Sunday 06 July 2014 02:52 PM, Alexandre Courbot wrote:
> On Fri, Jul 4, 2014 at 4:02 PM, Varka Bhadram <[email protected]> wrote:
>> This patch eliminates the following warning
>>
>> drivers/gpio/gpio-sch311x.c: In function ‘sch311x_gpio_probe’:
>> drivers/gpio/gpio-sch311x.c:286:18: warning: ignoring return value of ‘gpiochip_remove’, declared with attribute warn_unused_result
> gpiochip_remove() is to have its return value set to void in another
> patch, so I'm not sure we need this one in the meantime?

I also saw that patch from abdoulaye berthe<[email protected]> .

If that is accepted its good. If not this may require.

--
Regards,
Varka Bhadram

2014-07-09 07:50:51

by Linus Walleij

[permalink] [raw]
Subject: Re: [PATCH v2] drivers/gpio/gpio-sch311x: check return value of gpiochip_remove()

On Sun, Jul 6, 2014 at 3:23 PM, Varka Bhadram <[email protected]> wrote:
> On Sunday 06 July 2014 02:52 PM, Alexandre Courbot wrote:
>> On Fri, Jul 4, 2014 at 4:02 PM, Varka Bhadram <[email protected]>
>> wrote:
>>>
>>> This patch eliminates the following warning
>>>
>>> drivers/gpio/gpio-sch311x.c: In function ‘sch311x_gpio_probe’:
>>> drivers/gpio/gpio-sch311x.c:286:18: warning: ignoring return value of
>>> ‘gpiochip_remove’, declared with attribute warn_unused_result
>>
>> gpiochip_remove() is to have its return value set to void in another
>> patch, so I'm not sure we need this one in the meantime?
>
>
> I also saw that patch from abdoulaye berthe<[email protected]> .
>
> If that is accepted its good. If not this may require.

Yeah I'll go remove that. Just working out the patch mechanics right now,
we'll probably remove all return value checks in v3.17 and then delete
the code in gpiolib in late v3.17 cycle or the next merge window.

Yours,
Linus Walleij