diff options
author | Jérôme Pouiller <jerome.pouiller@silabs.com> | 2019-10-08 12:43:00 +0300 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2019-10-08 15:44:56 +0300 |
commit | 51f589c82f6d4b3c9e417b39141836fb3db86093 (patch) | |
tree | 390d5d1644cec46b512a4a08ef46fe9e0fc1aed3 /drivers/staging/wfx | |
parent | 53707c85d2c1ffe844266368cb7c7db137161881 (diff) | |
download | linux-51f589c82f6d4b3c9e417b39141836fb3db86093.tar.xz |
staging: wfx: fix copy_{to,from}_user() usage
On error, copy_to_user() returns number of bytes remaining. Driver
should return -EFAULT.
Fixes: 4f8b7fabb15d ("staging: wfx: allow to send commands to chip")
Reported-by: kbuild test robot <lkp@intel.com>
Reported-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
Link: https://lore.kernel.org/r/20191008094232.10014-6-Jerome.Pouiller@silabs.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/staging/wfx')
-rw-r--r-- | drivers/staging/wfx/debug.c | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/drivers/staging/wfx/debug.c b/drivers/staging/wfx/debug.c index 3261b267c385..8de16ad7c710 100644 --- a/drivers/staging/wfx/debug.c +++ b/drivers/staging/wfx/debug.c @@ -256,9 +256,8 @@ static ssize_t wfx_send_hif_msg_read(struct file *file, char __user *user_buf, return context->ret; // Be carefull, write() is waiting for a full message while read() // only return a payload - ret = copy_to_user(user_buf, context->reply, count); - if (ret) - return ret; + if (copy_to_user(user_buf, context->reply, count)) + return -EFAULT; return count; } |