On Thu, Nov 14, 2013 at 11:18:08AM +0300, Dan Carpenter wrote:
> The transaction task here is hp_sdc_tasklet() and it releases the lock.
> The problem is if we aren't able to queue the transaction then we need
> to release the lock ourselves.
> 
> Signed-off-by: Dan Carpenter <[email protected]>

Applied, thank you.

> 
> diff --git a/drivers/input/misc/hp_sdc_rtc.c b/drivers/input/misc/hp_sdc_rtc.c
> index 86b8228..45e0e3e 100644
> --- a/drivers/input/misc/hp_sdc_rtc.c
> +++ b/drivers/input/misc/hp_sdc_rtc.c
> @@ -180,7 +180,10 @@ static int64_t hp_sdc_rtc_read_i8042timer (uint8_t 
> loadcmd, int numreg)
>       if (WARN_ON(down_interruptible(&i8042tregs)))
>               return -1;
>  
> -     if (hp_sdc_enqueue_transaction(&t)) return -1;
> +     if (hp_sdc_enqueue_transaction(&t)) {
> +             up(&i8042tregs);
> +             return -1;
> +     }
>       
>       /* Sleep until results come back. */
>       if (WARN_ON(down_interruptible(&i8042tregs)))

-- 
Dmitry
--
To unsubscribe from this list: send the line "unsubscribe linux-input" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to