lkml.org 
[lkml]   [2016]   [Aug]   [21]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Subject[PATCH] megaraid_sas: Use memdup_user() rather than duplicating its implementation
    From
    Date
    From: Markus Elfring <elfring@users.sourceforge.net>
    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 <elfring@users.sourceforge.net>
    ---
    drivers/scsi/megaraid/megaraid_sas_base.c | 11 +++--------
    1 file changed, 3 insertions(+), 8 deletions(-)

    diff --git a/drivers/scsi/megaraid/megaraid_sas_base.c b/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) {
    --
    2.9.3
    \
     
     \ /
      Last update: 2016-09-17 09:57    [W:4.025 / U:0.156 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site