<font color="#3333ff"><font size="2"><font face="times new roman,serif">Thanks Nicolas.I will try it out by today/tommorow .</font></font></font><div><font class="Apple-style-span" color="#3333FF" face="&#39;times new roman&#39;, serif"><br>

</font></div><div><font class="Apple-style-span" color="#3333FF" face="&#39;times new roman&#39;, serif">Seems like it will touch lot of places in the codebase :-)</font></div><div><font class="Apple-style-span" color="#3333FF" face="&#39;times new roman&#39;, serif"><br>

</font></div><div><span class="Apple-style-span" style="font-family: &#39;times new roman&#39;, serif; color: rgb(51, 51, 255); ">Thanks again.</span></div><div><font class="Apple-style-span" color="#3333FF" face="&#39;times new roman&#39;, serif"><br>

</font></div><div><div><font color="#3333FF"><font face="&#39;times new roman&#39;, serif">Thanks,<br>Vilobh</font></font></div><div><font color="#3333FF"><font face="&#39;times new roman&#39;, serif"><i>Graduate Research Associate</i></font></font></div>

<div><font color="#3333FF"><font face="&#39;times new roman&#39;, serif"><i>Department of Computer Science</i></font></font></div><div><font color="#3333FF"><font face="&#39;times new roman&#39;, serif"><i>The Ohio State University Columbus Ohio</i><br>

</font></font><br>
<br><br><div class="gmail_quote">On Wed, Oct 13, 2010 at 8:28 PM, Nicolas Williams <span dir="ltr">&lt;<a href="mailto:Nicolas.Williams@oracle.com">Nicolas.Williams@oracle.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">

<div class="im">On Wed, Oct 13, 2010 at 07:51:37PM -0400, Vilobh Meshram wrote:<br>
&gt; 1) Is it possible that without writing a new RPC in Lustre 1.8.1.1 I can<br>
&gt; append some string such as &quot;Hello&quot; to the exsisting message sent by the<br>
&gt; Client (with the buffer size set at client side by the count,size fields).I<br>
&gt; tried modifying the &quot;size&quot; of the request for one of the RPC in-built in<br>
&gt; Lustre<br>
<br>
</div>Yes, it&#39;s possible to add buffers to requests. It&#39;s not possible to add<br>
buffers to _replies_ to existing RPCs unless you know the client expects<br>
those additional buffers -- existing clients expect a given maxsize for<br>
each reply, and if your reply is bigger then it will get dropped.<br>
<div class="im"><br>
&gt;     __u32 size[2] = { [MSG_PTLRPC_BODY_OFF] = sizeof(struct<br>
&gt; ptlrpc_body),<br>
&gt;                   [DLM_LOCKREQ_OFF]   = sizeof(struct<br>
&gt; ldlm_request) };<br>
&gt;<br>
&gt; ----&gt;&gt;<br>
&gt;   __u32 size[3] = { [MSG_PTLRPC_BODY_OFF] = sizeof(struct ptlrpc_body),<br>
&gt;                  [DLM_LOCKREQ_OFF]   = sizeof(struct<br>
&gt; ldlm_request) ,<br>
&gt;                  //how to add &quot;char *str=Hello&quot; ofcourse we<br>
&gt; will have sizeof(str) but how to choose the MACRO like DLM_LOCKREQ_OFF bcz<br>
&gt; for a specific kind of RPC there are limited number of such MACROS<br>
&gt;                       };<br>
<br>
</div>Add a buffer. Don&#39;t change the size of an existing buffer.<br>
<div class="im"><br>
&gt; The thing I want to know is how can I send a buffer from the client side by<br>
&gt; modifying the static structure &quot;size&quot; mentioned above.What all main places<br>
&gt; do I need to consider to make this work.<br>
<br>
</div>Add an element to the size[] array, then set it to the correct size when<br>
you know the length of the string. Look at the SET_INFO RPCs.<br>
<div class="im"><br>
&gt; If the above step i.e appending a buffer in the &quot;size&quot; array is not possible<br>
&gt; then I can move to write a new RPC.<br>
<br>
</div>The size[] array is just a convenient place to store the sizes of the<br>
individual buffers while you construct them.<br>
<br>
Nico<br>
<font color="#888888">--<br>
</font></blockquote></div><br></div></div>