Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

Input: sentelic - release mutex upon register write failure

Make sure that mutex is released upon register writing failure.
This fixes boot freezing observed on ARM based OLPC
(http://dev.laptop.org/ticket/11357).

Signed-off-by: Paul Fox <pgf@laptop.org>
Signed-off-by: Tai-hwa Liang <avatar@sentelic.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>

authored by

Tai-hwa Liang and committed by
Dmitry Torokhov
d9bae67a 8521478f

+2 -2
+2 -2
drivers/input/mouse/sentelic.c
··· 162 162 ps2_sendbyte(ps2dev, v, FSP_CMD_TIMEOUT2); 163 163 164 164 if (ps2_sendbyte(ps2dev, 0xf3, FSP_CMD_TIMEOUT) < 0) 165 - return -1; 165 + goto out; 166 166 167 167 if ((v = fsp_test_invert_cmd(reg_val)) != reg_val) { 168 168 /* inversion is required */ ··· 261 261 ps2_sendbyte(ps2dev, 0x88, FSP_CMD_TIMEOUT2); 262 262 263 263 if (ps2_sendbyte(ps2dev, 0xf3, FSP_CMD_TIMEOUT) < 0) 264 - return -1; 264 + goto out; 265 265 266 266 if ((v = fsp_test_invert_cmd(reg_val)) != reg_val) { 267 267 ps2_sendbyte(ps2dev, 0x47, FSP_CMD_TIMEOUT2);