[rds-devel] [PATCH] IB/RDS: fix the QP event handler to call rdma_notify()

Vladimir Sokolovsky vlad at dev.mellanox.co.il
Tue Dec 18 05:37:20 PST 2007


Or Gerlitz wrote:
> Change the qp event handler to call rdma_notify when getting an IB_EVENT_COMM_EST
> event. This will fix the case where the RTU is not lost, ie arrives just after
> the first data completion(s) where rds_connect_complete would be called twice,
> and tear down the connection.
> 
> Signed-off-by: Or Gerlitz <ogerlitz at voltaire.com>
> 
> Index: linux-2.6/net/rds/ib_cm.c
> ===================================================================
> --- linux-2.6.orig/net/rds/ib_cm.c	2007-12-18 13:12:01.000000000 +0200
> +++ linux-2.6/net/rds/ib_cm.c	2007-12-18 13:39:47.000000000 +0200
> @@ -94,7 +94,7 @@ static void rds_ib_qp_event_handler(stru
> 
>  	switch (event->event) {
>  		case IB_EVENT_COMM_EST:
> -			rds_ib_connect_complete(conn);
> +			rdma_notify(ic->i_cm_id, IB_EVENT_COMM_EST);
>  			break;
>  		default:
>  			printk(KERN_WARNING "RDS/ib: unhandled QP event %u "
> 

Or,
Do you mean to add rdma_notify after (or before) rds_ib_connect_complete?

  	switch (event->event) {
  		case IB_EVENT_COMM_EST:
			rds_ib_connect_complete(conn);
+			rdma_notify(ic->i_cm_id, IB_EVENT_COMM_EST);
  			break;
  		default:
  			printk(KERN_WARNING "RDS/ib: unhandled QP event %u "


- Vladimir




More information about the rds-devel mailing list