Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 354ba39c authored by John Kingman's avatar John Kingman Committed by Roland Dreier
Browse files

[PATCH] IB CM: support CM redir



Changes to CM to support CM and port redirection (REJ reason 24).

Signed-off-by: John Kingman <kingman <at> storagegear.com>
Signed-off-by: default avatarSean Hefty <sean.hefty@intel.com>
Signed-off-by: default avatarRoland Dreier <rolandd@cisco.com>
parent 63aaf647
Loading
Loading
Loading
Loading
+3 −1
Original line number Diff line number Diff line
@@ -173,7 +173,8 @@ static int cm_alloc_msg(struct cm_id_private *cm_id_priv,
	if (IS_ERR(ah))
		return PTR_ERR(ah);

	m = ib_create_send_mad(mad_agent, 1, cm_id_priv->av.pkey_index,
	m = ib_create_send_mad(mad_agent, cm_id_priv->id.remote_cm_qpn, 
			       cm_id_priv->av.pkey_index,
			       ah, 0, sizeof(struct ib_mad_hdr),
			       sizeof(struct ib_mad)-sizeof(struct ib_mad_hdr),
			       GFP_ATOMIC);
@@ -536,6 +537,7 @@ struct ib_cm_id *ib_create_cm_id(ib_cm_handler cm_handler,
	cm_id_priv->id.state = IB_CM_IDLE;
	cm_id_priv->id.cm_handler = cm_handler;
	cm_id_priv->id.context = context;
	cm_id_priv->id.remote_cm_qpn = 1;
	ret = cm_alloc_id(cm_id_priv);
	if (ret)
		goto error;
+1 −0
Original line number Diff line number Diff line
@@ -290,6 +290,7 @@ struct ib_cm_id {
	enum ib_cm_lap_state	lap_state;	/* internal CM/debug use */
	__be32			local_id;
	__be32			remote_id;
	u32			remote_cm_qpn;  /* 1 unless redirected */
};

/**