[Openib-windows] mtu_path problem

Leonid Keller leonid at mellanox.co.il
Thu Aug 3 07:48:34 PDT 2006


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) {
   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
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openfabrics.org/pipermail/ofw/attachments/20060803/05530d85/attachment.html>


More information about the ofw mailing list