RE: [PATCH] megaraid_sas: Use memdup_user() rather than duplicating its implementation
From: Sumit Saxena <sumit.saxena@broadcom.com>
Date: 2016-08-22 09:31:18
Also in:
linux-scsi, lkml
quoted hunk ↗ jump to hunk
-----Original Message----- From: SF Markus Elfring [mailto:elfring@users.sourceforge.net] Sent: Sunday, August 21, 2016 2:19 PM To: linux-scsi@vger.kernel.org; megaraidlinux.pdl@avagotech.com; James E. J. Bottomley; Kashyap Desai; Martin K. Petersen; Sumit Saxena; Uday Lingala Cc: LKML; kernel-janitors@vger.kernel.org; Julia Lawall Subject: [PATCH] megaraid_sas: Use memdup_user() rather than duplicating its implementation From: Markus Elfring <redacted> Date: Sun, 21 Aug 2016 10:39:04 +0200 Reuse existing functionality from memdup_user() instead of keeping duplicate source code. This issue was detected by using the Coccinelle software. Signed-off-by: Markus Elfring <redacted> --- drivers/scsi/megaraid/megaraid_sas_base.c | 11 +++-------- 1 file changed, 3 insertions(+), 8 deletions(-)diff --git a/drivers/scsi/megaraid/megaraid_sas_base.cb/drivers/scsi/megaraid/megaraid_sas_base.c index c1ed25a..9a2fe4e 100644--- a/drivers/scsi/megaraid/megaraid_sas_base.c +++ b/drivers/scsi/megaraid/megaraid_sas_base.c@@ -6711,14 +6711,9 @@ static int megasas_mgmt_ioctl_fw(struct file *file,unsigned long arg) unsigned long flags; u32 wait_time = MEGASAS_RESET_WAIT_TIME; - ioc = kmalloc(sizeof(*ioc), GFP_KERNEL); - if (!ioc) - return -ENOMEM; - - if (copy_from_user(ioc, user_ioc, sizeof(*ioc))) { - error = -EFAULT; - goto out_kfree_ioc; - } + ioc = memdup_user(user_ioc, sizeof(*ioc)); + if (IS_ERR(ioc)) + return PTR_ERR(ioc); instance = megasas_lookup_instance(ioc->host_no); if (!instance) {
Acked by: Sumit Saxena [off-list ref]
-- 2.9.3