<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META http-equiv=Content-Type content="text/html; charset=us-ascii">
<META content="MSHTML 6.00.2900.2873" name=GENERATOR></HEAD>
<BODY>
<DIV><FONT face=Arial size=2><SPAN class=193173614-03082006>Hi 
Fab,<BR></SPAN></FONT></DIV>
<DIV><FONT face=Arial size=2><SPAN class=193173614-03082006>I've added a sanity 
check in mthca_modify_qp (kernel space), checking MTU value.</SPAN></FONT></DIV>
<DIV><FONT face=Arial size=2><SPAN class=193173614-03082006>(not yet sync'ed 
with OpenIb repository):</SPAN></FONT></DIV>
<DIV><FONT face=Arial size=2><SPAN 
class=193173614-03082006>------------------------------------------------------------------------------------------------------------------</SPAN></FONT></DIV>
<DIV><FONT face=Arial size=2><SPAN class=193173614-03082006> /* leave 
tavor_sched_queue as 0 */</SPAN></FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2><SPAN class=193173614-03082006> if 
(qp->transport == MLX || qp->transport == 
UD)<BR>  qp_context->mtu_msgmax = (IB_MTU_2048 << 5) | 
11;<BR> else if (attr_mask & IB_QP_PATH_MTU) {</SPAN></FONT></DIV>
<DIV><FONT face=Arial size=2><SPAN class=193173614-03082006><STRONG>   
/* check MTU */ <BR>  if (attr->path_mtu < IB_MTU_256 || 
attr->path_mtu > IB_MTU_2048) 
{<BR>   HCA_PRINT(TRACE_LEVEL_ERROR 
,HCA_DBG_QP,<BR>    ("path MTU (%u) is invalid\n", 
attr->path_mtu));<BR>   goto 
out_mailbox;<BR>  }<BR></STRONG>  qp_context->mtu_msgmax 
= (u8)((attr->path_mtu << 5) | 
31);<BR> }<BR>-------------------------------------------------------------------------------------------------------------------</SPAN></FONT></DIV>
<DIV><FONT face=Arial size=2><SPAN 
class=193173614-03082006></SPAN></FONT> </DIV>
<DIV><FONT face=Arial size=2><SPAN class=193173614-03082006>This check caused 
failing of cm_test, because on changing to RTR state the MTU value was incorrect 
(132).</SPAN></FONT></DIV>
<DIV><FONT face=Arial size=2><SPAN class=193173614-03082006>I guess, that IBAL 
CM layer just "forgets" to set this value.</SPAN></FONT></DIV>
<DIV><FONT face=Arial size=2><SPAN class=193173614-03082006>It worked 
beforehand, because IBAL CM would set the right value on transition to RTS 
state, which would correct the previous incorrect value.</SPAN></FONT></DIV>
<DIV><FONT face=Arial size=2><SPAN 
class=193173614-03082006></SPAN></FONT> </DIV>
<DIV><FONT face=Arial size=2><SPAN class=193173614-03082006>For now we 
outcommented the 'goto' after the error print, but we would like to fix the bug 
and to keep the sanity check.</SPAN></FONT></DIV>
<DIV><FONT face=Arial size=2><SPAN 
class=193173614-03082006></SPAN></FONT> </DIV>
<DIV><FONT face=Arial size=2><SPAN class=193173614-03082006>Any comments 
?</SPAN></FONT></DIV>
<DIV><FONT face=Arial size=2><SPAN 
class=193173614-03082006></SPAN></FONT> </DIV>
<DIV><FONT face=Arial size=2><SPAN 
class=193173614-03082006>TIA</SPAN></FONT></DIV></BODY></HTML>