[openib-general] A couple of questions about osm_lid_mgr.c::__osm_lid_mgr_set_physp_pi

Hal Rosenstock halr at voltaire.com
Fri Dec 16 12:54:52 PST 2005


Hi,

I have a couple of questions about
osm_lid_mgr.c::__osm_lid_mgr_set_physp_pi.

There is the following code:

    if ( (mtu != ib_port_info_get_mtu_cap( p_old_pi )) ||
         (op_vls !=  ib_port_info_get_op_vls(p_old_pi)))
    {
      if( osm_log_is_active( p_mgr->p_log, OSM_LOG_DEBUG ) )
      {
        osm_log( p_mgr->p_log, OSM_LOG_DEBUG,
                 "__osm_lid_mgr_set_physp_pi: "
                 "Sending Link Down due to op_vls or mtu change. MTU:%u,%u VL_CAP:%u,%u\n",
                 mtu, ib_port_info_get_mtu_cap( p_old_pi ),
                 op_vls, ib_port_info_get_op_vls(p_old_pi)
                 );
      }
      ib_port_info_set_port_state( p_pi, IB_LINK_DOWN );

This seems a little inconsistent to me. It seems like NeighborMTU would
be the equivalent of OperationalVLs, rather than MTUCap (which is RO).
Also, why does changing the MTU require that the link be taken down ?

I also noticed a nit in the same function:

  p_pi->m_key_lease_period = p_mgr->p_subn->opt.m_key_lease_period;
  /* Check to see if the value we are setting is different than
     the value in the port_info. If it is - turn on send_set flag */
  if (cl_memcmp( &p_pi->m_key_lease_period, &p_old_pi->m_key_lease_period,
                 sizeof(p_pi->m_key_lease_period) ))
    send_set = TRUE;

Should that be only when the Mkey is non 0 ?

-- Hal




More information about the general mailing list