RE: [PATCH 1/7] aacraid: Use memdup_user() rather than duplicating its implementation

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



> From: Markus Elfring <elfring@xxxxxxxxxxxxxxxxxxxxx>
> Date: Sat, 20 Aug 2016 20:05:24 +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@xxxxxxxxxxxxxxxxxxxxx>
> ---
>  drivers/scsi/aacraid/commctrl.c | 12 +++---------
>  1 file changed, 3 insertions(+), 9 deletions(-)
> 
> diff --git a/drivers/scsi/aacraid/commctrl.c b/drivers/scsi/aacraid/commctrl.c
> index 5648b71..1af3084 100644
> --- a/drivers/scsi/aacraid/commctrl.c
> +++ b/drivers/scsi/aacraid/commctrl.c
> @@ -526,15 +526,9 @@ static int aac_send_raw_srb(struct aac_dev* dev, void
> __user * arg)
>                 goto cleanup;
>         }
> 
> -       user_srbcmd = kmalloc(fibsize, GFP_KERNEL);
> -       if (!user_srbcmd) {
> -               dprintk((KERN_DEBUG"aacraid: Could not make a copy of the srb\n"));
> -               rcode = -ENOMEM;
> -               goto cleanup;
> -       }
> -       if(copy_from_user(user_srbcmd, user_srb,fibsize)){
> -               dprintk((KERN_DEBUG"aacraid: Could not copy srb from user\n"));
> -               rcode = -EFAULT;
> +       user_srbcmd = memdup_user(user_srb, fibsize);
> +       if (IS_ERR(user_srbcmd)) {
> +               rcode = PTR_ERR(user_srbcmd);
>                 goto cleanup;
>         }
> 
> --

Hi Markus,

Patch 2/7 should precede Patch 1/7, as falling into kfree() would not look pretty.

Thanks, -Dave
��.n��������+%������w��{.n����z�ޗ�����n�r������&��z�ޗ�zf���h���~����������_��+v���)ߣ�

[Index of Archives]     [Kernel Development]     [Kernel Announce]     [Kernel Newbies]     [Linux Networking Development]     [Share Photos]     [IDE]     [Security]     [Git]     [Netfilter]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Device Mapper]

  Powered by Linux