2023-07-04 16:54:18

by Zhang Shurong

[permalink] [raw]
Subject: [PATCH] wifi: rtw89: debug: fix error code in rtw89_debug_priv_send_h2c_set()

If there is a failure during rtw89_fw_h2c_raw() rtw89_debug_priv_send_h2c
should return negative error code instead of a positive value count.

Fix this bug by returning correct error code.

Signed-off-by: Zhang Shurong <[email protected]>
---
drivers/net/wireless/realtek/rtw89/debug.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/drivers/net/wireless/realtek/rtw89/debug.c b/drivers/net/wireless/realtek/rtw89/debug.c
index 1db2d59d33ff..96481dd2b1d3 100644
--- a/drivers/net/wireless/realtek/rtw89/debug.c
+++ b/drivers/net/wireless/realtek/rtw89/debug.c
@@ -3026,17 +3026,18 @@ static ssize_t rtw89_debug_priv_send_h2c_set(struct file *filp,
struct rtw89_debugfs_priv *debugfs_priv = filp->private_data;
struct rtw89_dev *rtwdev = debugfs_priv->rtwdev;
u8 *h2c;
+ int err = 0;
u16 h2c_len = count / 2;

h2c = rtw89_hex2bin_user(rtwdev, user_buf, count);
if (IS_ERR(h2c))
return -EFAULT;

- rtw89_fw_h2c_raw(rtwdev, h2c, h2c_len);
+ err = rtw89_fw_h2c_raw(rtwdev, h2c, h2c_len);

kfree(h2c);

- return count;
+ return err ? ERR_PTR(err) : count;
}

static int
--
2.41.0