diff options
Diffstat (limited to 'drivers/input/misc/hp_sdc_rtc.c')
| -rw-r--r-- | drivers/input/misc/hp_sdc_rtc.c | 5 | 
1 files changed, 4 insertions, 1 deletions
| diff --git a/drivers/input/misc/hp_sdc_rtc.c b/drivers/input/misc/hp_sdc_rtc.c index 86b822806e95..45e0e3e55de2 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))) |