mirror of
https://github.com/torvalds/linux.git
synced 2026-10-12 21:31:03 +02:00
scsi: qla2xxx: Fix FCE trace enable parsing in debugfs
qla2x00_dfs_fce_write() called kstrtoul() with a NULL result pointer,
so a successful parse would dereference NULL and oops. Worse, the int
return value (0 on success, negative errno on failure) was assigned to
the unsigned long enable flag, inverting the intended logic: a valid
number was treated as "disable" while a parse failure enabled FCE.
Parse the value into enable and propagate parse errors to userspace.
Fixes: 841df27d61 ("scsi: qla2xxx: Move FCE Trace buffer allocation to user control")
Cc: stable@vger.kernel.org
Reported-by: Sashiko <sashiko-dev@google.com>
Signed-off-by: Nilesh Javali <njavali@marvell.com>
Link: https://patch.msgid.link/20260730155838.2119230-10-njavali@marvell.com
Signed-off-by: Martin K. Petersen (Oracle) <mkp@kernel.org>
This commit is contained in:
parent
9efaa78284
commit
b7368687e3
|
|
@ -510,7 +510,9 @@ qla2x00_dfs_fce_write(struct file *file, const char __user *buffer,
|
|||
return PTR_ERR(buf);
|
||||
}
|
||||
|
||||
enable = kstrtoul(buf, 0, 0);
|
||||
rc = kstrtoul(buf, 0, &enable);
|
||||
if (rc)
|
||||
goto out_free;
|
||||
rc = count;
|
||||
|
||||
mutex_lock(&ha->fce_mutex);
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user