aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/input/misc/uinput.c
diff options
context:
space:
mode:
authorDan Carpenter <dan.carpenter@oracle.com>2017-11-10 10:21:53 -0800
committerDmitry Torokhov <dmitry.torokhov@gmail.com>2017-11-10 10:29:53 -0800
commit781f2dd0a5eb8e660c0a5dbb11a69aed72f26657 (patch)
tree03aa15ba86ca4dbc409f039bc844c6bf639e6252 /drivers/input/misc/uinput.c
parentInput: add support for the Samsung S6SY761 touchscreen (diff)
downloadlinux-dev-781f2dd0a5eb8e660c0a5dbb11a69aed72f26657.tar.xz
linux-dev-781f2dd0a5eb8e660c0a5dbb11a69aed72f26657.zip
Input: uinput - unlock on allocation failure in ioctl
We have to unlock before returning if input_allocate_device() fails. Fixes: 04ce40a61a91 ("Input: uinput - remove uinput_allocate_device()") Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com> Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Diffstat (limited to 'drivers/input/misc/uinput.c')
-rw-r--r--drivers/input/misc/uinput.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/drivers/input/misc/uinput.c b/drivers/input/misc/uinput.c
index 7b41aad7ec27..39ddd9a73feb 100644
--- a/drivers/input/misc/uinput.c
+++ b/drivers/input/misc/uinput.c
@@ -857,8 +857,10 @@ static long uinput_ioctl_handler(struct file *file, unsigned int cmd,
if (!udev->dev) {
udev->dev = input_allocate_device();
- if (!udev->dev)
- return -ENOMEM;
+ if (!udev->dev) {
+ retval = -ENOMEM;
+ goto out;
+ }
}
switch (cmd) {