[openib-general] Re: [PATCH] RE: compliancy issue?

Michael S. Tsirkin mst at mellanox.co.il
Tue May 9 22:29:37 PDT 2006


Quoting r. Sean Hefty <sean.hefty at intel.com>:
> Subject: [PATCH] RE: compliancy issue?
> 
> >CA4-24.2.3: The connecting peer shall terminate the connection attempt
> >if ExtMaxAdverts of the HAH is set to zero.
> >
> >This means that SDP must examine the HAH before RTU is sent.
> >But, CMA currently sends RTU from cma_rep_recv, before notifying
> >the user.
> 
> Can you try this simple patch and see if it fixes your problem?  You will
> need to call rdma_accept() or rdma_reject() after receiving a CONNECT_RESPONSE
> event.  The conn_param to rdma_accept() should be NULL.
> 
> Signed-off-by: Sean Hefty <sean.hefty at intel.com>
> ---
> Index: cma.c
> ===================================================================
> --- cma.c	(revision 6948)
> +++ cma.c	(working copy)
> @@ -778,7 +778,7 @@ static int cma_ib_handler(struct ib_cm_i
>  		status = cma_verify_rep(id_priv, ib_event->private_data);
>  		if (status)
>  			event = RDMA_CM_EVENT_CONNECT_ERROR;
> -		else if (id_priv->id.qp) {
> +		else if (id_priv->id.qp && id_priv->id.ps != RDMA_PS_SDP) {
>  			status = cma_rep_recv(id_priv);
>  			event = status ? RDMA_CM_EVENT_CONNECT_ERROR :
>  					 RDMA_CM_EVENT_ESTABLISHED;
> 

Would not cma_rep_recv be required to modify the QP?
Anyway, I'll try.

-- 
MST



More information about the general mailing list