[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20100726153236.ead96c88.akpm@linux-foundation.org>
Date: Mon, 26 Jul 2010 15:32:36 -0700
From: Andrew Morton <akpm@...ux-foundation.org>
To: Uwe Kleine-König
<u.kleine-koenig@...gutronix.de>
Cc: Gregory Bean <gbean@...eaurora.org>, linux-arm-msm@...r.kernel.org,
linux-arm-kernel@...ts.infradead.org, linux-kernel@...r.kernel.org,
Jani Nikula <ext-jani.1.nikula@...ia.com>,
David Brownell <dbrownell@...rs.sourceforge.net>,
Greg Kroah-Hartman <gregkh@...e.de>,
Jon Povey <jon.povey@...elogic.co.uk>
Subject: Re: [PATCH] gpio: remove spurious gpio_unexport debug error.
On Fri, 23 Jul 2010 06:58:07 +0200
Uwe Kleine-K__nig <u.kleine-koenig@...gutronix.de> wrote:
> Hello,
>
> On Thu, Jul 22, 2010 at 02:05:58PM -0700, Gregory Bean wrote:
> > Make gpio_unexport generate success instead of an -EINVAL
> > if asked to unexport a line which is not exported, because
> > the only result of that condition is a pr_debug
> > which complains of what is really a harmless no-op:
> > when an unexported gpio is unexported again, nothing happens.
> > That's not a failure, just a trivial border case.
> > Since gpio_free calls gpio_unexport unconditionally
> > and exported gpio lines are uncommon, most calls to
> > gpio_free with debug flags enabled generate -EINVAL
> > warnings in the log, causing unnecessary stress.
> I noticed that a few days ago, too. Just didn't come around to fix it
> myself.
>
> > Signed-off-by: Gregory Bean <gbean@...eaurora.org>
> Acked-by: Uwe Kleine-K__nig <u.kleine-koenig@...gutronix.de>
>
Jon got there first ;)
Subject: gpio: fix spurious printk when freeing a gpio
From: Jon Povey <jon.povey@...elogic.co.uk>
When freeing a gpio that has not been exported, gpio_unexport() prints a
debug message when it should just fall through silently.
Example spurious message:
gpio_unexport: gpio0 status -22
Signed-off-by: Jon Povey <jon.povey@...elogic.co.uk>
Cc: David Brownell <david-b@...bell.net>
Signed-off-by: Andrew Morton <akpm@...ux-foundation.org>
---
drivers/gpio/gpiolib.c | 7 ++++---
1 file changed, 4 insertions(+), 3 deletions(-)
diff -puN drivers/gpio/gpiolib.c~gpio-fix-spurious-printk-when-freeing-a-gpio drivers/gpio/gpiolib.c
--- a/drivers/gpio/gpiolib.c~gpio-fix-spurious-printk-when-freeing-a-gpio
+++ a/drivers/gpio/gpiolib.c
@@ -893,10 +893,12 @@ EXPORT_SYMBOL_GPL(gpio_sysfs_set_active_
void gpio_unexport(unsigned gpio)
{
struct gpio_desc *desc;
- int status = -EINVAL;
+ int status = 0;
- if (!gpio_is_valid(gpio))
+ if (!gpio_is_valid(gpio)) {
+ status = -EINVAL;
goto done;
+ }
mutex_lock(&sysfs_lock);
@@ -911,7 +913,6 @@ void gpio_unexport(unsigned gpio)
clear_bit(FLAG_EXPORT, &desc->flags);
put_device(dev);
device_unregister(dev);
- status = 0;
} else
status = -ENODEV;
}
_
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists