summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlexey Khoroshilov <khoroshilov@ispras.ru>2012-11-27 00:26:46 +0400
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2012-11-26 15:58:43 -0800
commitffa5c41c81503b6f48fddb5d39f18af526ded8d3 (patch)
treefc1506e9c02747f0ab8ea12ce7e0b400fd3dbe8c
parentd7e14b375b40c04cd735b115713043b69a2c68ac (diff)
downloadlinux-stable-ffa5c41c81503b6f48fddb5d39f18af526ded8d3.tar.gz
linux-stable-ffa5c41c81503b6f48fddb5d39f18af526ded8d3.tar.bz2
linux-stable-ffa5c41c81503b6f48fddb5d39f18af526ded8d3.zip
uwb: fix uwb_dev_unlock() missed at an error path in uwb_rc_cmd_async()
There is the only path in uwb_rc_cmd_async() where rc->uwb_dev is left unlocked. Found by Linux Driver Verification project (linuxtesting.org). Signed-off-by: Alexey Khoroshilov <khoroshilov@ispras.ru> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r--drivers/uwb/reset.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/uwb/reset.c b/drivers/uwb/reset.c
index 703228559e89..8b47c9cdd642 100644
--- a/drivers/uwb/reset.c
+++ b/drivers/uwb/reset.c
@@ -97,6 +97,7 @@ int uwb_rc_cmd_async(struct uwb_rc *rc, const char *cmd_name,
neh = uwb_rc_neh_add(rc, cmd, expected_type, expected_event, cb, arg);
if (IS_ERR(neh)) {
result = PTR_ERR(neh);
+ uwb_dev_unlock(&rc->uwb_dev);
goto out;
}