wifi: wil6210: debugfs: fix uninitialized variable use in `wil_write_file_wmi()`
authorAmmar Faizi <ammarfaizi2@gnuweeb.org>
Mon, 25 Jul 2022 17:49:11 +0000 (20:49 +0300)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 25 Aug 2022 09:11:20 +0000 (11:11 +0200)
[ Upstream commit d578e0af3a003736f6c440188b156483d451b329 ]

Commit 7a4836560a61 changes simple_write_to_buffer() with memdup_user()
but it forgets to change the value to be returned that came from
simple_write_to_buffer() call. It results in the following warning:

  warning: variable 'rc' is uninitialized when used here [-Wuninitialized]
           return rc;
                  ^~

Remove rc variable and just return the passed in length if the
memdup_user() succeeds.

Cc: Dan Carpenter <dan.carpenter@oracle.com>
Reported-by: kernel test robot <lkp@intel.com>
Fixes: 7a4836560a6198d245d5732e26f94898b12eb760 ("wifi: wil6210: debugfs: fix info leak in wil_write_file_wmi()")
Fixes: ff974e4083341383d3dd4079e52ed30f57f376f0 ("wil6210: debugfs interface to send raw WMI command")
Signed-off-by: Ammar Faizi <ammarfaizi2@gnuweeb.org>
Reviewed-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Kalle Valo <quic_kvalo@quicinc.com>
Link: https://lore.kernel.org/r/20220724202452.61846-1-ammar.faizi@intel.com
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/net/wireless/ath/wil6210/debugfs.c

index 2da52145cb6040404b37533cbe198537a22525b0..12aec63d8c06e6c3fca8cdc32e629face4c4cfa3 100644 (file)
@@ -834,7 +834,7 @@ static ssize_t wil_write_file_wmi(struct file *file, const char __user *buf,
        void *cmd;
        int cmdlen = len - sizeof(struct wmi_cmd_hdr);
        u16 cmdid;
-       int rc, rc1;
+       int rc1;
 
        if (cmdlen < 0 || *ppos != 0)
                return -EINVAL;
@@ -851,7 +851,7 @@ static ssize_t wil_write_file_wmi(struct file *file, const char __user *buf,
 
        wil_info(wil, "0x%04x[%d] -> %d\n", cmdid, cmdlen, rc1);
 
-       return rc;
+       return len;
 }
 
 static const struct file_operations fops_wmi = {