<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META content="text/html; charset=us-ascii" http-equiv=Content-Type>
<META name=GENERATOR content="MSHTML 8.00.6001.18702"></HEAD>
<BODY>
<DIV><FONT size=2 face=Arial><SPAN class=867083822-14102009>This patch is needed
to fix the following case:</SPAN></FONT></DIV>
<DIV><FONT size=2 face=Arial><SPAN
class=867083822-14102009></SPAN></FONT> </DIV>
<DIV><FONT size=2 face=Arial><SPAN class=867083822-14102009>two qps are
connected.</SPAN></FONT></DIV>
<DIV><FONT size=2 face=Arial><SPAN class=867083822-14102009>another path is
already loaded.</SPAN></FONT></DIV>
<DIV><FONT size=2 face=Arial><SPAN class=867083822-14102009>The connected
port fails. An apm event is fired.</SPAN></FONT></DIV>
<DIV><FONT size=2 face=Arial><SPAN class=867083822-14102009>a process of loading
a new path starts by a query path record. The sm doesn't still know that the
port is down so it returns a path record.</SPAN></FONT></DIV>
<DIV><FONT size=2 face=Arial><SPAN class=867083822-14102009>The cm client side
sends lap. Since the port is down he gets a timeout
response.</SPAN></FONT></DIV>
<DIV><FONT size=2 face=Arial><SPAN class=867083822-14102009>After the timeout
all new lap requests failed with invalid state. The fix is to return the cep to
established state after the timeout.</SPAN></FONT></DIV>
<DIV><FONT size=2 face=Arial><SPAN
class=867083822-14102009></SPAN></FONT> </DIV>
<DIV><FONT size=2 face=Arial><SPAN
class=867083822-14102009>Thanks</SPAN></FONT></DIV>
<DIV><FONT size=2 face=Arial><SPAN
class=867083822-14102009>Tzachi</SPAN></FONT></DIV>
<DIV><FONT size=2 face=Arial><SPAN
class=867083822-14102009></SPAN></FONT> </DIV>
<DIV><FONT size=2 face=Arial><SPAN class=867083822-14102009></SPAN></FONT><FONT
size=2 face=Arial></FONT> </DIV>
<DIV><FONT size=2 face=Arial></FONT> </DIV>
<DIV><FONT size=2 face=Arial>Index:
Q:/projMLNX_WinOF_2.0/MLNX_WinOF_2-0/core/al/kernel/al_cm_cep.c<BR>===================================================================<BR>---
Q:/projMLNX_WinOF_2.0/MLNX_WinOF_2-0/core/al/kernel/al_cm_cep.c (revision
4956)<BR>+++
Q:/projMLNX_WinOF_2.0/MLNX_WinOF_2-0/core/al/kernel/al_cm_cep.c (revision
4957)<BR>@@ -2289,7 +2289,15 @@<BR> __format_drep( p_cep,
NULL, 0, &p_cep->mads.drep );<BR> p_cep->state
= CEP_STATE_TIMEWAIT;<BR> __insert_timewait( p_cep
);<BR>+ break;<BR> <BR>+ case
CEP_STATE_LAP_SENT:<BR>+ /*<BR>+ * Before CEP
was sent, we have been in CEP_STATE_ESTABLISHED as we<BR>+ *
failed to send, we return to that state.<BR>+
*/<BR>+ p_cep->state =
CEP_STATE_ESTABLISHED;<BR>+ break;<BR> default:<BR> break;<BR> }<BR></DIV></FONT></BODY></HTML>