lkml.org 
[lkml]   [2012]   [Dec]   [13]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 008/241] gpiolib: Don't return -EPROBE_DEFER to sysfs, or for invalid gpios
    Date
    3.5.7.2 -stable review patch.  If anyone has any objections, please let me know.

    ------------------

    From: Mathias Nyman <mathias.nyman@linux.intel.com>

    commit ad2fab36d7922401c4576fb7ea9b21a47a29a17f upstream.

    gpios requested with invalid numbers, or gpios requested from userspace via sysfs
    should not try to be deferred on failure.

    Signed-off-by: Mathias Nyman <mathias.nyman@linux.intel.com>
    Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
    Signed-off-by: Herton Ronaldo Krzesinski <herton.krzesinski@canonical.com>
    ---
    drivers/gpio/gpiolib.c | 10 +++++++---
    1 file changed, 7 insertions(+), 3 deletions(-)

    diff --git a/drivers/gpio/gpiolib.c b/drivers/gpio/gpiolib.c
    index 120b2a0..bd76017 100644
    --- a/drivers/gpio/gpiolib.c
    +++ b/drivers/gpio/gpiolib.c
    @@ -623,9 +623,11 @@ static ssize_t export_store(struct class *class,
    */

    status = gpio_request(gpio, "sysfs");
    - if (status < 0)
    + if (status < 0) {
    + if (status == -EPROBE_DEFER)
    + status = -ENODEV;
    goto done;
    -
    + }
    status = gpio_export(gpio, true);
    if (status < 0)
    gpio_free(gpio);
    @@ -1191,8 +1193,10 @@ int gpio_request(unsigned gpio, const char *label)

    spin_lock_irqsave(&gpio_lock, flags);

    - if (!gpio_is_valid(gpio))
    + if (!gpio_is_valid(gpio)) {
    + status = -EINVAL;
    goto done;
    + }
    desc = &gpio_desc[gpio];
    chip = desc->chip;
    if (chip == NULL)
    --
    1.7.9.5


    \
     
     \ /
      Last update: 2012-12-13 15:21    [W:3.622 / U:0.220 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site