Patch "iw_cxgb4: Fix potential NULL dereference in c4iw_fill_res_cm_id_entry()" has been added to the 6.1-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

    iw_cxgb4: Fix potential NULL dereference in c4iw_fill_res_cm_id_entry()

to the 6.1-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:
     iw_cxgb4-fix-potential-null-dereference-in-c4iw_fill.patch
and it can be found in the queue-6.1 subdirectory.

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



commit 7c06945775c76792c096869d92a3951f75c9b547
Author: Dan Carpenter <error27@xxxxxxxxx>
Date:   Tue Feb 14 18:43:38 2023 +0300

    iw_cxgb4: Fix potential NULL dereference in c4iw_fill_res_cm_id_entry()
    
    [ Upstream commit 4ca446b127c568b59cb8d9748b6f70499624bb18 ]
    
    This condition needs to match the previous "if (epcp->state == LISTEN) {"
    exactly to avoid a NULL dereference of either "listen_ep" or "ep". The
    problem is that "epcp" has been re-assigned so just testing
    "if (epcp->state == LISTEN) {" a second time is not sufficient.
    
    Fixes: 116aeb887371 ("iw_cxgb4: provide detailed provider-specific CM_ID information")
    Signed-off-by: Dan Carpenter <error27@xxxxxxxxx>
    Link: https://lore.kernel.org/r/Y+usKuWIKr4dimZh@kili
    Signed-off-by: Leon Romanovsky <leon@xxxxxxxxxx>
    Signed-off-by: Sasha Levin <sashal@xxxxxxxxxx>

diff --git a/drivers/infiniband/hw/cxgb4/restrack.c b/drivers/infiniband/hw/cxgb4/restrack.c
index ff645b955a082..fd22c85d35f4f 100644
--- a/drivers/infiniband/hw/cxgb4/restrack.c
+++ b/drivers/infiniband/hw/cxgb4/restrack.c
@@ -238,7 +238,7 @@ int c4iw_fill_res_cm_id_entry(struct sk_buff *msg,
 	if (rdma_nl_put_driver_u64_hex(msg, "history", epcp->history))
 		goto err_cancel_table;
 
-	if (epcp->state == LISTEN) {
+	if (listen_ep) {
 		if (rdma_nl_put_driver_u32(msg, "stid", listen_ep->stid))
 			goto err_cancel_table;
 		if (rdma_nl_put_driver_u32(msg, "backlog", listen_ep->backlog))



[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