[openib-general] [PATCH] [CM] include packet lifetime in MRA delay
Sean Hefty
sean.hefty at intel.com
Wed Jun 29 16:57:17 PDT 2005
The following patch includes the packet lifetime as part of the delay
waiting for a request after receiving an MRA. Problem pointed out by
Fab Tillier.
Signed-off-by: Sean Hefty <sean.hefty at intel.com>
Index: core/cm.c
===================================================================
--- core/cm.c (revision 2752)
+++ core/cm.c (working copy)
@@ -92,6 +92,7 @@ struct cm_av {
union ib_gid dgid;
struct ib_ah_attr ah_attr;
u16 pkey_index;
+ u8 packet_life_time;
};
struct cm_work {
@@ -296,6 +297,7 @@ static int cm_init_av_by_path(struct ib_
av->port = port;
cm_set_ah_attr(&av->ah_attr, av->port->port_num, path->dlid,
path->sl, path->slid & 0x7F);
+ av->packet_life_time = path->packet_life_time;
return 0;
}
@@ -2164,7 +2166,8 @@ static int cm_mra_handler(struct cm_work
work->cm_event.private_data = &mra_msg->private_data;
work->cm_event.param.mra_rcvd.service_timeout =
cm_mra_get_service_timeout(mra_msg);
- timeout = cm_convert_to_ms(cm_mra_get_service_timeout(mra_msg));
+ timeout = cm_convert_to_ms(cm_mra_get_service_timeout(mra_msg)) +
+ cm_convert_to_ms(cm_id_priv->av.packet_life_time);
spin_lock_irqsave(&cm_id_priv->lock, flags);
switch (cm_id_priv->id.state) {
More information about the general
mailing list