Re: [PATCH] megaraid_sas: fix memory leak if SGL has zero length entries

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

 



On Wed, Nov 21, 2012 at 12:54 AM, Bjørn Mork <bjorn@xxxxxxx> wrote:
> commit 98cb7e44 ([SCSI] megaraid_sas: Sanity check user
> supplied length before passing it to dma_alloc_coherent())
> introduced a memory leak.  Memory allocated for entries
> following zero length SGL entries will not be freed.
>
> Reference: http://bugs.debian.org/688198
> Cc: <stable@xxxxxxxxxxxxxxx>
> Signed-off-by: Bjørn Mork <bjorn@xxxxxxx>
> ---
>  drivers/scsi/megaraid/megaraid_sas_base.c |   10 ++++++----
>  1 file changed, 6 insertions(+), 4 deletions(-)
>
> diff --git a/drivers/scsi/megaraid/megaraid_sas_base.c b/drivers/scsi/megaraid/megaraid_sas_base.c
> index d2c5366..12b6be4 100644
> --- a/drivers/scsi/megaraid/megaraid_sas_base.c
> +++ b/drivers/scsi/megaraid/megaraid_sas_base.c
> @@ -4854,10 +4854,12 @@ megasas_mgmt_fw_ioctl(struct megasas_instance *instance,
>                                     sense, sense_handle);
>         }
>
> -       for (i = 0; i < ioc->sge_count && kbuff_arr[i]; i++) {
> -               dma_free_coherent(&instance->pdev->dev,
> -                                   kern_sge32[i].length,
> -                                   kbuff_arr[i], kern_sge32[i].phys_addr);
> +       for (i = 0; i < ioc->sge_count; i++) {
> +               if (kbuff_arr[i])
> +                       dma_free_coherent(&instance->pdev->dev,
> +                                         kern_sge32[i].length,
> +                                         kbuff_arr[i],
> +                                         kern_sge32[i].phys_addr);
>         }
>
>         megasas_return_cmd(instance, cmd);

Acked-by: Adam Radford <aradford@xxxxxxxxx>
--
To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [SCSI Target Devel]     [Linux SCSI Target Infrastructure]     [Kernel Newbies]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Linux IIO]     [Samba]     [Device Mapper]
  Powered by Linux