diff options
author | 2009-01-29 14:25:12 -0800 | |
---|---|---|
committer | 2009-01-29 18:04:43 -0800 | |
commit | 7460db567bbca76bf087d1694d792a1a96bdaa26 (patch) | |
tree | cb0da014bc604f11525d1e9d23b305b007914549 /drivers | |
parent | memcg: get/put parents at create/free (diff) | |
download | linux-7460db567bbca76bf087d1694d792a1a96bdaa26.tar.gz linux-7460db567bbca76bf087d1694d792a1a96bdaa26.tar.bz2 linux-7460db567bbca76bf087d1694d792a1a96bdaa26.zip |
gpiolib: fix request related issue
Fix request-already-requested handling in gpio_request().
Signed-off-by: Magnus Damm <damm@igel.co.jp>
Acked-by: David Brownell <dbrownell@users.sourceforge.net>
Cc: <stable@kernel.org> [2.6.28.x]
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/gpio/gpiolib.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/gpio/gpiolib.c b/drivers/gpio/gpiolib.c index 35e7aea4222c..42fb2fd24c0c 100644 --- a/drivers/gpio/gpiolib.c +++ b/drivers/gpio/gpiolib.c @@ -789,6 +789,7 @@ int gpio_request(unsigned gpio, const char *label) } else { status = -EBUSY; module_put(chip->owner); + goto done; } if (chip->request) { |