drivers/net/wireless/realtek/rtlwifi/debug.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-)
If there is a failure during copy_from_user or user-provided data buffer
is invalid, rtl_debugfs_set_write_rfreg 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.
Fixes: 610247f46feb ("rtlwifi: Improve debugging by using debugfs")
Signed-off-by: Wei Chen <harperchen1110@gmail.com>
---
Changes in v2:
- Add fixes commit tag
- Correct the subject prefix
drivers/net/wireless/realtek/rtlwifi/debug.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/drivers/net/wireless/realtek/rtlwifi/debug.c b/drivers/net/wireless/realtek/rtlwifi/debug.c
index 3e7f9b4f1f19..9eb26dfe4ca9 100644
--- a/drivers/net/wireless/realtek/rtlwifi/debug.c
+++ b/drivers/net/wireless/realtek/rtlwifi/debug.c
@@ -375,8 +375,8 @@ static ssize_t rtl_debugfs_set_write_rfreg(struct file *filp,
tmp_len = (count > sizeof(tmp) - 1 ? sizeof(tmp) - 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';
@@ -386,7 +386,7 @@ static ssize_t rtl_debugfs_set_write_rfreg(struct file *filp,
if (num != 4) {
rtl_dbg(rtlpriv, COMP_ERR, DBG_DMESG,
"Format is <path> <addr> <mask> <data>\n");
- return count;
+ return -EINVAL;
}
rtl_set_rfreg(hw, path, addr, bitmask, data);
--
2.25.1
Wei Chen <harperchen1110@gmail.com> wrote: > If there is a failure during copy_from_user or user-provided data buffer > is invalid, rtl_debugfs_set_write_rfreg 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. > > Fixes: 610247f46feb ("rtlwifi: Improve debugging by using debugfs") > Signed-off-by: Wei Chen <harperchen1110@gmail.com> > Reviewed-by: Simon Horman <simon.horman@corigine.com> Patch applied to wireless-next.git, thanks. 905a9241e4e8 wifi: rtlwifi: fix incorrect error codes in rtl_debugfs_set_write_rfreg() -- https://patchwork.kernel.org/project/linux-wireless/patch/20230326053138.91338-1-harperchen1110@gmail.com/ https://wireless.wiki.kernel.org/en/developers/documentation/submittingpatches
> -----Original Message----- > From: Wei Chen <harperchen1110@gmail.com> > Sent: Sunday, March 26, 2023 1:32 PM > To: Ping-Ke Shih <pkshih@realtek.com> > Cc: kvalo@kernel.org; davem@davemloft.net; edumazet@google.com; kuba@kernel.org; pabeni@redhat.com; > linux-wireless@vger.kernel.org; netdev@vger.kernel.org; linux-kernel@vger.kernel.org; Wei Chen > <harperchen1110@gmail.com> > Subject: [PATCH v2] rtlwifi: fix incorrect error codes in rtl_debugfs_set_write_rfreg() > Subject prefix should be "wifi: rtlwifi: ...". [...]
On Sun, Mar 26, 2023 at 05:31:38AM +0000, Wei Chen wrote: > If there is a failure during copy_from_user or user-provided data buffer > is invalid, rtl_debugfs_set_write_rfreg 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. > > Fixes: 610247f46feb ("rtlwifi: Improve debugging by using debugfs") > Signed-off-by: Wei Chen <harperchen1110@gmail.com> Reviewed-by: Simon Horman <simon.horman@corigine.com>
© 2016 - 2024 Red Hat, Inc.