<!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-windows] Create AV with GRH from user space</TITLE>
</HEAD>
<BODY>

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

<P><FONT SIZE=2>Attached patch that cached the hca_attr after the first query.</FONT>
<BR><FONT SIZE=2>We still need to figure if the cache of CA attr in UL is good idea , but till then this patch unable use to send GRH from UL.</FONT></P>

<P><FONT SIZE=2>(I also add the case to the alts test so we can cover this flow)</FONT>
</P>

<P><FONT SIZE=2>10x</FONT>
<BR><FONT SIZE=2>Yossi </FONT>
</P>

<P><FONT SIZE=2>Singed-off-by: Yossi Leybovich (sleybo@mellanox.co.il)</FONT>
<BR><FONT SIZE=2>Index: hw/mt23108/user/mlnx_ual_ca.c</FONT>
<BR><FONT SIZE=2>===================================================================</FONT>
<BR><FONT SIZE=2>--- hw/mt23108/user/mlnx_ual_ca.c       (revision 435)</FONT>
<BR><FONT SIZE=2>+++ hw/mt23108/user/mlnx_ual_ca.c       (working copy)</FONT>
<BR><FONT SIZE=2>@@ -201,6 +201,7 @@</FONT>
<BR><FONT SIZE=2>                byte_count && !h_uvp_ca->p_hca_attr )</FONT>
<BR><FONT SIZE=2>        {</FONT>
<BR><FONT SIZE=2>                h_uvp_ca->p_hca_attr = p_umv_buf->p_inout_buf;</FONT>
<BR><FONT SIZE=2>+               cl_memcpy(h_uvp_ca->p_hca_attr, p_ca_attr,byte_count);</FONT>
<BR><FONT SIZE=2>        }</FONT>
<BR><FONT SIZE=2>        else if (p_umv_buf->p_inout_buf) </FONT>
<BR><FONT SIZE=2>        {</FONT>
<BR><FONT SIZE=2>Index: tests/alts/createdestroyav.c</FONT>
<BR><FONT SIZE=2>===================================================================</FONT>
<BR><FONT SIZE=2>--- tests/alts/createdestroyav.c        (revision 435)</FONT>
<BR><FONT SIZE=2>+++ tests/alts/createdestroyav.c        (working copy)</FONT>
<BR><FONT SIZE=2>@@ -219,7 +219,12 @@</FONT>
<BR><FONT SIZE=2>                alts_av_attr.sl = 0;</FONT>
<BR><FONT SIZE=2>                alts_av_attr.static_rate = IB_PATH_RECORD_RATE_10_GBS;</FONT>
<BR><FONT SIZE=2>                alts_av_attr.path_bits = 0;</FONT>
<BR><FONT SIZE=2>-                alts_av_attr.grh_valid = FALSE;</FONT>
<BR><FONT SIZE=2>+               alts_av_attr.grh_valid = TRUE;</FONT>
<BR><FONT SIZE=2>+</FONT>
<BR><FONT SIZE=2>+               alts_av_attr.grh.dest_gid.unicast.interface_id= ca_guid_array[0];</FONT>
<BR><FONT SIZE=2>+               alts_av_attr.grh.src_gid.unicast.interface_id = ca_guid_array[0];</FONT>
<BR><FONT SIZE=2>+               alts_av_attr.grh.hop_limit = 0;</FONT>
<BR><FONT SIZE=2>+               alts_av_attr.grh.ver_class_flow = 0;</FONT>
<BR><FONT SIZE=2>                /*</FONT>
<BR><FONT SIZE=2>                 * step 6: Create a PD</FONT>
<BR><FONT SIZE=2>                 */</FONT>
</P>

<P><FONT FACE="Arial" SIZE=2 COLOR="#000000"></FONT> 

</BODY>
</HTML>