<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
<HTML>
<HEAD>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=US-ASCII">
<META NAME="Generator" CONTENT="MS Exchange Server version 5.5.2654.45">
<TITLE>RE: [openib-general] SM Bad Port Handling</TITLE>
</HEAD>
<BODY>

<P><FONT SIZE=2>Hi Hal,</FONT>
</P>

<P><FONT SIZE=2>This is a physical port attribute so the file is osm_port.h and the structure is osm_physp_t.</FONT>
<BR><FONT SIZE=2>From the doc on the structure:</FONT>
<BR><FONT SIZE=2>*</FONT>
<BR><FONT SIZE=2>*  healthy</FONT>
<BR><FONT SIZE=2>*     Tracks the health of the port. Normally should be TRUE but </FONT>
<BR><FONT SIZE=2>*     might change as a result of incoming traps indicating the port</FONT>
<BR><FONT SIZE=2>*     healthy is questionable.</FONT>
<BR><FONT SIZE=2>*</FONT>
</P>

<P><FONT SIZE=2>I have been trying my best to find how it can happen that a port that does not respond will cause OpenSM to continuously poll it. This can not happen so unless you can explain how it happens please do not contaminate the code with un-needed code.</FONT></P>

<P><FONT SIZE=2>The only thing that comes to mind it the case of failure to "Set" some attributes of devices in the fabric. This happens only after discovery is completed and only after the validity of the data base is verified (i.e. each node has ports, each port have a node ...)</FONT></P>

<P><FONT SIZE=2>In that case of failure to set some attributes (aka LFT, PortInfo etc) OpenSM will output a clear error message: "Errors in intialization" and will restart a full sweep of the fabric. </FONT></P>

<P><FONT SIZE=2>This is the only way one get an infinite polling on the entire subnet.</FONT>
</P>

<P><FONT SIZE=2>In general, it might make sense to try and improve how OpenSM qualifies each fabric port for the statistics of the number of packet drops versus good packets it passed through. Note this is complex due to the fact a port might affect packets that goes through it. And there is no way to know on which hop on the path the packet was dropped. </FONT></P>

<P><FONT SIZE=2>Eitan Zahavi</FONT>
<BR><FONT SIZE=2>Design Technology Director</FONT>
<BR><FONT SIZE=2>Mellanox Technologies LTD</FONT>
<BR><FONT SIZE=2>Tel:+972-4-9097208</FONT>
<BR><FONT SIZE=2>Fax:+972-4-9593245</FONT>
<BR><FONT SIZE=2>P.O. Box 586 Yokneam 20692 ISRAEL</FONT>
</P>
<BR>

<P><FONT SIZE=2>> -----Original Message-----</FONT>
<BR><FONT SIZE=2>> From: Hal Rosenstock [<A HREF="mailto:halr@voltaire.com">mailto:halr@voltaire.com</A>]</FONT>
<BR><FONT SIZE=2>> Sent: Friday, April 08, 2005 6:24 PM</FONT>
<BR><FONT SIZE=2>> To: Eitan Zahavi</FONT>
<BR><FONT SIZE=2>> Cc: openib-general@openib.org</FONT>
<BR><FONT SIZE=2>> Subject: RE: [openib-general] SM Bad Port Handling</FONT>
<BR><FONT SIZE=2>> </FONT>
<BR><FONT SIZE=2>> Hi Eitan,</FONT>
<BR><FONT SIZE=2>> </FONT>
<BR><FONT SIZE=2>> On Thu, 2005-04-07 at 16:02, Eitan Zahavi wrote:</FONT>
<BR><FONT SIZE=2>> > [EZ] It is better to use the "un-healthy" bit of the physical port -</FONT>
<BR><FONT SIZE=2>> > which OpenSM is already maintaining.</FONT>
<BR><FONT SIZE=2>> </FONT>
<BR><FONT SIZE=2>> What is the name of this bit and in what structure does it appear ?</FONT>
<BR><FONT SIZE=2>> </FONT>
<BR><FONT SIZE=2>> Thanks.</FONT>
<BR><FONT SIZE=2>> </FONT>
<BR><FONT SIZE=2>> -- Hal</FONT>
</P>

</BODY>
</HTML>