[openib-general] APM support in openib stack
Venkatesh Babu
venkatesh.babu at 3leafnetworks.com
Mon Oct 30 10:38:34 PST 2006
Thanks for sending the patch. I will try this out and let you know the
results.
VBabu
Dotan Barak wrote:
> Hi.
>
>
> Venkatesh Babu wrote:
>
>> I don't think there is any event which says "path1 is back again".
>> It is the application which needs to load the alternate path. The HW
>> just sends an event IB_EVENT_PORT_ACTIVE when port comes up. Upon
>> recipt of the this event the application has to see if there exists a
>> path from this port to the remote node and then load this alternate
>> path by sending the APR message.
>> PS: In Gen1 implementation there was an event called
>> IB_PATH_MIG_ARMED which was generated by HW/FW after loading the
>> alternate path by the application.
>>
>> SA event notification is to just callback registered handlers when
>> IB_EVENT_PORT_ACTIVE event occurrs on any node in the subnet or on a
>> specific node according to the registeration parameters.
>>
>> VBabu
>>
>> somenath wrote:
>>
>>
>>
>>> Sean,
>>>
>>> will there be a new API for SA event notification?
>>> today we already get this IB_EVENT_PATH_MIG (as defined below),
>>> will "path1 is back again" event
>>> be delivered the same way?
>>>
>>> thanks, som.
>>>
>>> enum ib_event_type {
>>> IB_EVENT_CQ_ERR,
>>> IB_EVENT_QP_FATAL,
>>> IB_EVENT_QP_REQ_ERR,
>>> IB_EVENT_QP_ACCESS_ERR,
>>> IB_EVENT_COMM_EST,
>>> IB_EVENT_SQ_DRAINED,
>>> IB_EVENT_PATH_MIG,
>>> IB_EVENT_PATH_MIG_ERR,
>>> IB_EVENT_DEVICE_FATAL,
>>> IB_EVENT_PORT_ACTIVE,
>>> IB_EVENT_PORT_ERR,
>>> IB_EVENT_LID_CHANGE,
>>> IB_EVENT_PKEY_CHANGE,
>>> IB_EVENT_SM_CHANGE,
>>> IB_EVENT_SRQ_ERR,
>>> IB_EVENT_SRQ_LIMIT_REACHED,
>>> IB_EVENT_QP_LAST_WQE_REACHED
>>> };
>>>
>>
>
> I checked the code of the file cm.c (if OFED 1.1) and the attribute
> alt_timeout is not mentioned anywhere in this code.
> I believe that the value of this attribute is set to zero, which means
> that the QP will wait infinite time to the answer (that will never come).
>
> Venkatesh, can you check this issue by querying the QP attributes
> after the path was migrated?
> I think that you will find that the value of the timeout attribute is
> zero.
>
> Sean, i don't familiar with the cm.c code, but i believe that the
> following patch will solve this issue:
>
> Index: last_stable/drivers/infiniband/core/cm.c
> ===================================================================
> --- last_stable.orig/drivers/infiniband/core/cm.c 2006-10-29
> 16:58:08.000000000 +0200
> +++ last_stable/drivers/infiniband/core/cm.c 2006-10-29
> 17:31:57.000000000 +0200
> @@ -3221,6 +3221,7 @@ static int cm_init_qp_rtr_attr(struct cm
> if (cm_id_priv->alt_av.ah_attr.dlid) {
> *qp_attr_mask |= IB_QP_ALT_PATH;
> qp_attr->alt_port_num =
> cm_id_priv->alt_av.port->port_num;
> + qp_attr->alt_timeout =
> cm_id_priv->alt_av.packet_life_time;
> qp_attr->alt_ah_attr = cm_id_priv->alt_av.ah_attr;
> }
> ret = 0;
>
>
> thanks
> Dotan
More information about the general
mailing list