[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