Skip to content

RDMA/siw: Fix connection failure handling

Kamal Heib requested to merge kheib/centos-stream-9:28044 into main

JIRA: https://issues.redhat.com/browse/RHEL-28044
CVE: CVE-2023-52513

commit 53a3f777049771496f791504e7dc8ef017cba590
Author: Bernard Metzler bmt@zurich.ibm.com
Date: Tue Sep 5 16:58:22 2023 +0200

RDMA/siw: Fix connection failure handling  

In case immediate MPA request processing fails, the newly  
created endpoint unlinks the listening endpoint and is  
ready to be dropped. This special case was not handled  
correctly by the code handling the later TCP socket close,  
causing a NULL dereference crash in siw_cm_work_handler()  
when dereferencing a NULL listener. We now also cancel  
the useless MPA timeout, if immediate MPA request  
processing fails.  

This patch furthermore simplifies MPA processing in general:  
Scheduling a useless TCP socket read in sk_data_ready() upcall  
is now surpressed, if the socket is already moved out of  
TCP_ESTABLISHED state.  

Fixes: 6c52fdc244b5 ("rdma/siw: connection management")  
Signed-off-by: Bernard Metzler <bmt@zurich.ibm.com>  
Link: https://lore.kernel.org/r/20230905145822.446263-1-bmt@zurich.ibm.com  
Signed-off-by: Leon Romanovsky <leon@kernel.org>  

Signed-off-by: Kamal Heib kheib@redhat.com

Merge request reports