[PATCH 5/7] staging: wfx: fix copy_{to,from}_user() usage

From: Jerome Pouiller
Date: Tue Oct 08 2019 - 05:43:21 EST


From: JÃrÃme Pouiller <jerome.pouiller@xxxxxxxxxx>

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@xxxxxxxxx>
Reported-by: Dan Carpenter <dan.carpenter@xxxxxxxxxx>
Signed-off-by: JÃrÃme Pouiller <jerome.pouiller@xxxxxxxxxx>
---
drivers/staging/wfx/debug.c | 5 ++---
1 file 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;
}
--
2.20.1