lkml.org 
[lkml]   [2022]   [Jun]   [23]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 4.14 202/237] scsi: ipr: Fix missing/incorrect resource cleanup in error case
    Date
    From: Chengguang Xu <cgxu519@mykernel.net>

    [ Upstream commit d64c491911322af1dcada98e5b9ee0d87e8c8fee ]

    Fix missing resource cleanup (when '(--i) == 0') for error case in
    ipr_alloc_mem() and skip incorrect resource cleanup (when '(--i) == 0') for
    error case in ipr_request_other_msi_irqs() because variable i started from
    1.

    Link: https://lore.kernel.org/r/20220529153456.4183738-4-cgxu519@mykernel.net
    Reviewed-by: Dan Carpenter <dan.carpenter@oracle.com>
    Acked-by: Brian King <brking@linux.vnet.ibm.com>
    Signed-off-by: Chengguang Xu <cgxu519@mykernel.net>
    Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    ---
    drivers/scsi/ipr.c | 4 ++--
    1 file changed, 2 insertions(+), 2 deletions(-)

    diff --git a/drivers/scsi/ipr.c b/drivers/scsi/ipr.c
    index b172f0a02083..99b37e19feca 100644
    --- a/drivers/scsi/ipr.c
    +++ b/drivers/scsi/ipr.c
    @@ -9788,7 +9788,7 @@ static int ipr_alloc_mem(struct ipr_ioa_cfg *ioa_cfg)
    GFP_KERNEL);

    if (!ioa_cfg->hrrq[i].host_rrq) {
    - while (--i > 0)
    + while (--i >= 0)
    dma_free_coherent(&pdev->dev,
    sizeof(u32) * ioa_cfg->hrrq[i].size,
    ioa_cfg->hrrq[i].host_rrq,
    @@ -10060,7 +10060,7 @@ static int ipr_request_other_msi_irqs(struct ipr_ioa_cfg *ioa_cfg,
    ioa_cfg->vectors_info[i].desc,
    &ioa_cfg->hrrq[i]);
    if (rc) {
    - while (--i >= 0)
    + while (--i > 0)
    free_irq(pci_irq_vector(pdev, i),
    &ioa_cfg->hrrq[i]);
    return rc;
    --
    2.35.1


    \
     
     \ /
      Last update: 2022-06-23 19:44    [W:4.178 / U:0.172 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site