From 51f589c82f6d4b3c9e417b39141836fb3db86093 Mon Sep 17 00:00:00 2001 From: =?utf8?q?J=C3=A9r=C3=B4me=20Pouiller?= Date: Tue, 8 Oct 2019 09:43:00 +0000 Subject: [PATCH] staging: wfx: fix copy_{to,from}_user() usage MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit 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 Reported-by: Dan Carpenter Signed-off-by: Jérôme Pouiller Link: https://lore.kernel.org/r/20191008094232.10014-6-Jerome.Pouiller@silabs.com Signed-off-by: Greg Kroah-Hartman --- 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.11.0