<!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] [PATCH] Allow setting of NodeDescription</TITLE>
</HEAD>
<BODY>

<P><FONT SIZE=2>Unless the Node Description is changed before QP0 on the HCA enters the RTS state, there is no guarantee that the SM will receive the updated Node Description string.</FONT></P>

<P><FONT SIZE=2>Note the following scenario (in which SM is already up-and-running on another host in the network):</FONT>
<BR><FONT SIZE=2>1. Local driver starts up</FONT>
<BR><FONT SIZE=2>2. QP0 on local HCA enters RTS state</FONT>
<BR><FONT SIZE=2>3. SM sweep occurs just after 2 above</FONT>
<BR><FONT SIZE=2>4. Local SM agent provides SM with Node Description string as was specified at HCA startup</FONT>
<BR><FONT SIZE=2>5. SM provides SA with Node Description info, for the NodeRecord query for each node in the net.</FONT>
<BR><FONT SIZE=2>5. User now modifies Node Description to something else</FONT>
<BR><FONT SIZE=2>6. NO guarantee that SM will pay attention to change of Node Description at next sweep. (depends on SM implementation).</FONT>
<BR><FONT SIZE=2>7. SA will then use the original Node Description string when responding to a NodeRecord query.</FONT>
</P>

<P><FONT SIZE=2>The resulting set of NodeDescription strings present in the SM and SA could then be a race-dependent salad (depending on the timing of QP0 entering RTS state, SM subnet sweep, and resetting of the local NodeDescription string).</FONT></P>

<P><FONT SIZE=2>Jack</FONT>
</P>

<P><FONT SIZE=2>-----Original Message-----</FONT>
<BR><FONT SIZE=2>From: Roland Dreier [<A HREF="mailto:rolandd@cisco.com">mailto:rolandd@cisco.com</A>]</FONT>
<BR><FONT SIZE=2>Sent: Thursday, September 15, 2005 8:18 AM</FONT>
<BR><FONT SIZE=2>To: Fab Tillier</FONT>
<BR><FONT SIZE=2>Cc: openib-general@openib.org</FONT>
<BR><FONT SIZE=2>Subject: Re: [openib-general] [PATCH] Allow setting of NodeDescription</FONT>
</P>
<BR>

<P><FONT SIZE=2>    Fab> To me, non volatile in this context means something like</FONT>
<BR><FONT SIZE=2>    Fab> using the system name.</FONT>
</P>

<P><FONT SIZE=2>Huh??  To me non-volatile means not changing.</FONT>
</P>

<P><FONT SIZE=2>    Fab> Would this be hard to do?  In fact, I would prefer to see the</FONT>
<BR><FONT SIZE=2>    Fab> system name used instead of whatever is programmed in the HCA</FONT>
<BR><FONT SIZE=2>    Fab> as the default.  Granted, this makes the node description</FONT>
<BR><FONT SIZE=2>    Fab> burned in the firmware useless, but that doesn't seem like a</FONT>
<BR><FONT SIZE=2>    Fab> big deal.</FONT>
</P>

<P><FONT SIZE=2>It's easy to do, but I don't want to put naming policy in the kernel.</FONT>
<BR><FONT SIZE=2>I'll try to think of a clean way to give userspace a chance to set the</FONT>
<BR><FONT SIZE=2>node description before the HCA ports are exposed to the SM.</FONT>
</P>

<P><FONT SIZE=2>However, there are various unsolvable cases like boot over IB, where</FONT>
<BR><FONT SIZE=2>the HCA ports need to be active to mount the root filesystem, but the</FONT>
<BR><FONT SIZE=2>system doesn't have its hostname set until after the root filesystem</FONT>
<BR><FONT SIZE=2>is mounted.</FONT>
</P>

<P><FONT SIZE=2> - R.</FONT>
<BR><FONT SIZE=2>_______________________________________________</FONT>
<BR><FONT SIZE=2>openib-general mailing list</FONT>
<BR><FONT SIZE=2>openib-general@openib.org</FONT>
<BR><FONT SIZE=2><A HREF="http://openib.org/mailman/listinfo/openib-general" TARGET="_blank">http://openib.org/mailman/listinfo/openib-general</A></FONT>
</P>

<P><FONT SIZE=2>To unsubscribe, please visit <A HREF="http://openib.org/mailman/listinfo/openib-general" TARGET="_blank">http://openib.org/mailman/listinfo/openib-general</A></FONT>
</P>

</BODY>
</HTML>