Patch "bnxt_en: Fix possible memory leak in bnxt_rdma_aux_device_init()" has been added to the 6.6-stable tree

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

 



This is a note to let you know that I've just added the patch titled

    bnxt_en: Fix possible memory leak in bnxt_rdma_aux_device_init()

to the 6.6-stable tree which can be found at:
    http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:
     bnxt_en-fix-possible-memory-leak-in-bnxt_rdma_aux_de.patch
and it can be found in the queue-6.6 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree,
please let <stable@xxxxxxxxxxxxxxx> know about it.



commit a01c9a53f75ead091cef6f80a8c0f1490ec00d9a
Author: Vikas Gupta <vikas.gupta@xxxxxxxxxxxx>
Date:   Fri Apr 5 16:55:11 2024 -0700

    bnxt_en: Fix possible memory leak in bnxt_rdma_aux_device_init()
    
    [ Upstream commit 7ac10c7d728d75bc9daaa8fade3c7a3273b9a9ff ]
    
    If ulp = kzalloc() fails, the allocated edev will leak because it is
    not properly assigned and the cleanup path will not be able to free it.
    Fix it by assigning it properly immediately after allocation.
    
    Fixes: 303432211324 ("bnxt_en: Remove runtime interrupt vector allocation")
    Reviewed-by: Andy Gospodarek <andrew.gospodarek@xxxxxxxxxxxx>
    Signed-off-by: Vikas Gupta <vikas.gupta@xxxxxxxxxxxx>
    Signed-off-by: Michael Chan <michael.chan@xxxxxxxxxxxx>
    Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>
    Signed-off-by: Sasha Levin <sashal@xxxxxxxxxx>

diff --git a/drivers/net/ethernet/broadcom/bnxt/bnxt_ulp.c b/drivers/net/ethernet/broadcom/bnxt/bnxt_ulp.c
index 6ba2b93986333..7188ea81401de 100644
--- a/drivers/net/ethernet/broadcom/bnxt/bnxt_ulp.c
+++ b/drivers/net/ethernet/broadcom/bnxt/bnxt_ulp.c
@@ -394,12 +394,13 @@ void bnxt_rdma_aux_device_init(struct bnxt *bp)
 	if (!edev)
 		goto aux_dev_uninit;
 
+	aux_priv->edev = edev;
+
 	ulp = kzalloc(sizeof(*ulp), GFP_KERNEL);
 	if (!ulp)
 		goto aux_dev_uninit;
 
 	edev->ulp_tbl = ulp;
-	aux_priv->edev = edev;
 	bp->edev = edev;
 	bnxt_set_edev_info(edev, bp);
 




[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux