summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHailong Liu <liu.hailong6@zte.com.cn>2019-02-13 19:29:36 +0300
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2019-02-15 10:09:14 +0300
commit28c618abeee3380a4ead50fe9863b692dd851e07 (patch)
treeb14d7c81e497b4b7a08ad83eba2fba9ba9810096
parent13af019c87f2d90e663742cb1a819834048842ae (diff)
downloadlinux-28c618abeee3380a4ead50fe9863b692dd851e07.tar.xz
uio: fix wrong return value from uio_mmap()
commit e7de2590f18a272e63732b9d519250d1b522b2c4 upstream. uio_mmap has multiple fail paths to set return value to nonzero then goto out. However, it always returns *0* from the *out* at end, and this will mislead callers who check the return value of this function. Fixes: 57c5f4df0a5a0ee ("uio: fix crash after the device is unregistered") CC: Xiubo Li <xiubli@redhat.com> Signed-off-by: Hailong Liu <liu.hailong6@zte.com.cn> Cc: stable <stable@vger.kernel.org> Signed-off-by: Jiang Biao <jiang.biao2@zte.com.cn> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> Signed-off-by: Tommi Rantala <tommi.t.rantala@nokia.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r--drivers/uio/uio.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/uio/uio.c b/drivers/uio/uio.c
index 262610192755..fed2d8fa4d4d 100644
--- a/drivers/uio/uio.c
+++ b/drivers/uio/uio.c
@@ -816,7 +816,7 @@ static int uio_mmap(struct file *filep, struct vm_area_struct *vma)
out:
mutex_unlock(&idev->info_lock);
- return 0;
+ return ret;
}
static const struct file_operations uio_fops = {