aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorZhang Shurong <zhang_shurong@foxmail.com>2023-04-27 01:02:20 +0800
committerKalle Valo <kvalo@kernel.org>2023-05-05 10:38:08 +0300
commit225622256b1b7156624e281e1c0251c292ea24cd (patch)
treea326dad85ac15ecc7edc0a49ffb7188f897aeb19
parent271a588d34ed1dd771bc85a224b05ccdacce1de8 (diff)
wifi: rtw88: fix incorrect error codes in rtw_debugfs_copy_from_user
If there is a failure during copy_from_user or user-provided data buffer is invalid, rtw_debugfs_copy_from_user should return negative error code instead of a positive value count. Fix this bug by returning correct error code. Moreover, the check of buffer against null is removed since it will be handled by copy_from_user. Signed-off-by: Zhang Shurong <zhang_shurong@foxmail.com> Reviewed-by: Ping-Ke Shih <pkshih@realtek.com> Signed-off-by: Kalle Valo <kvalo@kernel.org> Link: https://lore.kernel.org/r/tencent_D2EB102CC7435C0110154E62ECA6A7D67505@qq.com
-rw-r--r--drivers/net/wireless/realtek/rtw88/debug.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/net/wireless/realtek/rtw88/debug.c b/drivers/net/wireless/realtek/rtw88/debug.c
index fa3d73b333ba..3da477e1ebd3 100644
--- a/drivers/net/wireless/realtek/rtw88/debug.c
+++ b/drivers/net/wireless/realtek/rtw88/debug.c
@@ -183,8 +183,8 @@ static int rtw_debugfs_copy_from_user(char tmp[], int size,
tmp_len = (count > size - 1 ? size - 1 : count);
- if (!buffer || copy_from_user(tmp, buffer, tmp_len))
- return count;
+ if (copy_from_user(tmp, buffer, tmp_len))
+ return -EFAULT;
tmp[tmp_len] = '\0';