diff options
Diffstat (limited to 'net/rds')
| -rw-r--r-- | net/rds/rdma.c | 2 | ||||
| -rw-r--r-- | net/rds/rdma_transport.c | 5 | 
2 files changed, 5 insertions, 2 deletions
| diff --git a/net/rds/rdma.c b/net/rds/rdma.c index 4c93badeabf2..ea961144084f 100644 --- a/net/rds/rdma.c +++ b/net/rds/rdma.c @@ -135,7 +135,7 @@ void rds_rdma_drop_keys(struct rds_sock *rs)  	/* Release any MRs associated with this socket */  	spin_lock_irqsave(&rs->rs_rdma_lock, flags);  	while ((node = rb_first(&rs->rs_rdma_keys))) { -		mr = container_of(node, struct rds_mr, r_rb_node); +		mr = rb_entry(node, struct rds_mr, r_rb_node);  		if (mr->r_trans == rs->rs_transport)  			mr->r_invalidate = 0;  		rb_erase(&mr->r_rb_node, &rs->rs_rdma_keys); diff --git a/net/rds/rdma_transport.c b/net/rds/rdma_transport.c index 345f09059e9f..d5f311767157 100644 --- a/net/rds/rdma_transport.c +++ b/net/rds/rdma_transport.c @@ -100,11 +100,14 @@ int rds_rdma_cm_event_handler(struct rdma_cm_id *cm_id,  		trans->cm_connect_complete(conn, event);  		break; +	case RDMA_CM_EVENT_REJECTED: +		rdsdebug("Connection rejected: %s\n", +			 rdma_reject_msg(cm_id, event->status)); +		/* FALLTHROUGH */  	case RDMA_CM_EVENT_ADDR_ERROR:  	case RDMA_CM_EVENT_ROUTE_ERROR:  	case RDMA_CM_EVENT_CONNECT_ERROR:  	case RDMA_CM_EVENT_UNREACHABLE: -	case RDMA_CM_EVENT_REJECTED:  	case RDMA_CM_EVENT_DEVICE_REMOVAL:  	case RDMA_CM_EVENT_ADDR_CHANGE:  		if (conn) |