| From 19f1bc7edf0f97186810e13a88f5b62069d89097 Mon Sep 17 00:00:00 2001 |
| From: Dan Carpenter <dan.carpenter@oracle.com> |
| Date: Fri, 12 Mar 2021 10:42:11 +0300 |
| Subject: scsi: lpfc: Fix some error codes in debugfs |
| |
| From: Dan Carpenter <dan.carpenter@oracle.com> |
| |
| commit 19f1bc7edf0f97186810e13a88f5b62069d89097 upstream. |
| |
| If copy_from_user() or kstrtoull() fail then the correct behavior is to |
| return a negative error code. |
| |
| Link: https://lore.kernel.org/r/YEsbU/UxYypVrC7/@mwanda |
| Fixes: f9bb2da11db8 ("[SCSI] lpfc 8.3.27: T10 additions for SLI4") |
| Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com> |
| Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com> |
| Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| --- |
| drivers/scsi/lpfc/lpfc_debugfs.c | 4 ++-- |
| 1 file changed, 2 insertions(+), 2 deletions(-) |
| |
| --- a/drivers/scsi/lpfc/lpfc_debugfs.c |
| +++ b/drivers/scsi/lpfc/lpfc_debugfs.c |
| @@ -1843,7 +1843,7 @@ lpfc_debugfs_dif_err_write(struct file * |
| memset(dstbuf, 0, 33); |
| size = (nbytes < 32) ? nbytes : 32; |
| if (copy_from_user(dstbuf, buf, size)) |
| - return 0; |
| + return -EFAULT; |
| |
| if (dent == phba->debug_InjErrLBA) { |
| if ((buf[0] == 'o') && (buf[1] == 'f') && (buf[2] == 'f')) |
| @@ -1851,7 +1851,7 @@ lpfc_debugfs_dif_err_write(struct file * |
| } |
| |
| if ((tmp == 0) && (kstrtoull(dstbuf, 0, &tmp))) |
| - return 0; |
| + return -EINVAL; |
| |
| if (dent == phba->debug_writeGuard) |
| phba->lpfc_injerr_wgrd_cnt = (uint32_t)tmp; |