aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDan Carpenter <dan.carpenter@oracle.com>2016-11-16 17:23:22 -0800
committerDmitry Torokhov <dmitry.torokhov@gmail.com>2016-11-16 17:31:26 -0800
commit792f497b22afd0563b94dd8fa129a05f762a2c25 (patch)
treebc00a243bc03828bea163c2bd56f5991b2da5284
parentInput: synaptics-rmi4 - add SMBus support (diff)
downloadlinux-dev-792f497b22afd0563b94dd8fa129a05f762a2c25.tar.xz
linux-dev-792f497b22afd0563b94dd8fa129a05f762a2c25.zip
Input: synaptics-rmi4 - unlock on error
We should unlock before returning on this error path. Fixes: 3a762dbd5347 ('[media] Input: synaptics-rmi4 - add support for F54 diagnostics') Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com> Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
-rw-r--r--drivers/input/rmi4/rmi_f54.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/input/rmi4/rmi_f54.c b/drivers/input/rmi4/rmi_f54.c
index cf805b960866..2e934aef3d2a 100644
--- a/drivers/input/rmi4/rmi_f54.c
+++ b/drivers/input/rmi4/rmi_f54.c
@@ -200,7 +200,7 @@ static int rmi_f54_request_report(struct rmi_function *fn, u8 report_type)
error = rmi_write(rmi_dev, fn->fd.command_base_addr, F54_GET_REPORT);
if (error < 0)
- return error;
+ goto unlock;
init_completion(&f54->cmd_done);
@@ -209,9 +209,10 @@ static int rmi_f54_request_report(struct rmi_function *fn, u8 report_type)
queue_delayed_work(f54->workqueue, &f54->work, 0);
+unlock:
mutex_unlock(&f54->data_mutex);
- return 0;
+ return error;
}
static size_t rmi_f54_get_report_size(struct f54_data *f54)