[Openib-windows] mtu_path problem

Hal Rosenstock halr at voltaire.com
Tue Aug 8 07:48:15 PDT 2006


Hi,

On Thu, 2006-08-03 at 10:48, Leonid Keller wrote:
> Hi Fab,
> 
> I've added a sanity check in mthca_modify_qp (kernel space), checking
> MTU value.
> (not yet sync'ed with OpenIb repository):
> ------------------------------------------------------------------------------------------------------------------
>  /* leave tavor_sched_queue as 0 */
>  
>  if (qp->transport == MLX || qp->transport == UD)
>   qp_context->mtu_msgmax = (IB_MTU_2048 << 5) | 11;
>  else if (attr_mask & IB_QP_PATH_MTU) {
>    /* check MTU */ 
>   if (attr->path_mtu < IB_MTU_256 || attr->path_mtu > IB_MTU_2048) {

Rather than compare against IB_MTU_2048 (4), might the comparison be
against the port's MTUCap just in case some future Mellanox device
supported by mthca supports the maximal MTU ?

-- Hal

>    HCA_PRINT(TRACE_LEVEL_ERROR ,HCA_DBG_QP,
>     ("path MTU (%u) is invalid\n", attr->path_mtu));
>    goto out_mailbox;
>   }
>   qp_context->mtu_msgmax = (u8)((attr->path_mtu << 5) | 31);
>  }
> -------------------------------------------------------------------------------------------------------------------
>  
> This check caused failing of cm_test, because on changing to RTR state
> the MTU value was incorrect (132).
> I guess, that IBAL CM layer just "forgets" to set this value.
> It worked beforehand, because IBAL CM would set the right value on
> transition to RTS state, which would correct the previous incorrect
> value.
>  
> For now we outcommented the 'goto' after the error print, but we would
> like to fix the bug and to keep the sanity check.
>  
> Any comments ?
>  
> TIA
> 
> ______________________________________________________________________
> 
> _______________________________________________
> openib-windows mailing list
> openib-windows at openib.org
> http://openib.org/mailman/listinfo/openib-windows





More information about the ofw mailing list