<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML xmlns="http://www.w3.org/TR/REC-html40" xmlns:v = 
"urn:schemas-microsoft-com:vml" xmlns:o = 
"urn:schemas-microsoft-com:office:office" xmlns:w = 
"urn:schemas-microsoft-com:office:word" xmlns:x = 
"urn:schemas-microsoft-com:office:excel" xmlns:p = 
"urn:schemas-microsoft-com:office:powerpoint" xmlns:a = 
"urn:schemas-microsoft-com:office:access" xmlns:dt = 
"uuid:C2F41010-65B3-11d1-A29F-00AA00C14882" xmlns:s = 
"uuid:BDC6E3F0-6DA3-11d1-A2A3-00AA00C14882" xmlns:rs = 
"urn:schemas-microsoft-com:rowset" xmlns:z = "#RowsetSchema" xmlns:b = 
"urn:schemas-microsoft-com:office:publisher" xmlns:ss = 
"urn:schemas-microsoft-com:office:spreadsheet" xmlns:c = 
"urn:schemas-microsoft-com:office:component:spreadsheet" xmlns:odc = 
"urn:schemas-microsoft-com:office:odc" xmlns:oa = 
"urn:schemas-microsoft-com:office:activation" xmlns:html = 
"http://www.w3.org/TR/REC-html40" xmlns:q = 
"http://schemas.xmlsoap.org/soap/envelope/" xmlns:rtc = 
"http://microsoft.com/officenet/conferencing" XMLNS:D = "DAV:" XMLNS:Repl = 
"http://schemas.microsoft.com/repl/" xmlns:mt = 
"http://schemas.microsoft.com/sharepoint/soap/meetings/" xmlns:x2 = 
"http://schemas.microsoft.com/office/excel/2003/xml" xmlns:ppda = 
"http://www.passport.com/NameSpace.xsd" xmlns:ois = 
"http://schemas.microsoft.com/sharepoint/soap/ois/" xmlns:dir = 
"http://schemas.microsoft.com/sharepoint/soap/directory/" xmlns:ds = 
"http://www.w3.org/2000/09/xmldsig#" xmlns:dsp = 
"http://schemas.microsoft.com/sharepoint/dsp" xmlns:udc = 
"http://schemas.microsoft.com/data/udc" xmlns:xsd = 
"http://www.w3.org/2001/XMLSchema" xmlns:sub = 
"http://schemas.microsoft.com/sharepoint/soap/2002/1/alerts/" xmlns:ec = 
"http://www.w3.org/2001/04/xmlenc#" xmlns:sp = 
"http://schemas.microsoft.com/sharepoint/" xmlns:sps = 
"http://schemas.microsoft.com/sharepoint/soap/" xmlns:xsi = 
"http://www.w3.org/2001/XMLSchema-instance" xmlns:udcs = 
"http://schemas.microsoft.com/data/udc/soap" xmlns:udcxf = 
"http://schemas.microsoft.com/data/udc/xmlfile" xmlns:udcp2p = 
"http://schemas.microsoft.com/data/udc/parttopart" xmlns:wf = 
"http://schemas.microsoft.com/sharepoint/soap/workflow/" xmlns:dsss = 
"http://schemas.microsoft.com/office/2006/digsig-setup" xmlns:dssi = 
"http://schemas.microsoft.com/office/2006/digsig" xmlns:mdssi = 
"http://schemas.openxmlformats.org/package/2006/digital-signature" xmlns:mver = 
"http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:m = 
"http://schemas.microsoft.com/office/2004/12/omml" xmlns:mrels = 
"http://schemas.openxmlformats.org/package/2006/relationships" xmlns:spwp = 
"http://microsoft.com/sharepoint/webpartpages" xmlns:ex12t = 
"http://schemas.microsoft.com/exchange/services/2006/types" xmlns:ex12m = 
"http://schemas.microsoft.com/exchange/services/2006/messages" xmlns:pptsl = 
"http://schemas.microsoft.com/sharepoint/soap/SlideLibrary/" xmlns:spsl = 
"http://microsoft.com/webservices/SharePointPortalServer/PublishedLinksService" 
XMLNS:Z = "urn:schemas-microsoft-com:" xmlns:st = ""><HEAD>
<META content="text/html; charset=us-ascii" http-equiv=Content-Type>
<META name=GENERATOR content="MSHTML 8.00.6001.18928"><!--[if !mso]>
<STYLE>v\:* {
        BEHAVIOR: url(#default#VML)
}
o\:* {
        BEHAVIOR: url(#default#VML)
}
w\:* {
        BEHAVIOR: url(#default#VML)
}
.shape {
        BEHAVIOR: url(#default#VML)
}
</STYLE>
<![endif]-->
<STYLE>@font-face {
        font-family: Cambria Math;
}
@font-face {
        font-family: Calibri;
}
@font-face {
        font-family: Tahoma;
}
@page WordSection1 {size: 8.5in 11.0in; margin: 1.0in 1.0in 1.0in 1.0in; }
P.MsoNormal {
        MARGIN: 0in 0in 0pt; FONT-FAMILY: "Calibri","sans-serif"; FONT-SIZE: 11pt
}
LI.MsoNormal {
        MARGIN: 0in 0in 0pt; FONT-FAMILY: "Calibri","sans-serif"; FONT-SIZE: 11pt
}
DIV.MsoNormal {
        MARGIN: 0in 0in 0pt; FONT-FAMILY: "Calibri","sans-serif"; FONT-SIZE: 11pt
}
A:link {
        COLOR: blue; TEXT-DECORATION: underline; mso-style-priority: 99
}
SPAN.MsoHyperlink {
        COLOR: blue; TEXT-DECORATION: underline; mso-style-priority: 99
}
A:visited {
        COLOR: purple; TEXT-DECORATION: underline; mso-style-priority: 99
}
SPAN.MsoHyperlinkFollowed {
        COLOR: purple; TEXT-DECORATION: underline; mso-style-priority: 99
}
SPAN.EmailStyle17 {
        FONT-FAMILY: "Calibri","sans-serif"; COLOR: windowtext; mso-style-type: personal
}
SPAN.EmailStyle18 {
        FONT-FAMILY: "Calibri","sans-serif"; COLOR: #1f497d; mso-style-type: personal-reply
}
.MsoChpDefault {
        FONT-SIZE: 10pt; mso-style-type: export-only
}
DIV.WordSection1 {
        page: WordSection1
}
</STYLE>
<!--[if gte mso 9]><xml>
 <o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
 <o:shapelayout v:ext="edit">
  <o:idmap v:ext="edit" data="1" />
 </o:shapelayout></xml><![endif]--></HEAD>
<BODY lang=EN-US link=blue vLink=purple>
<DIV dir=ltr align=left><SPAN class=223145619-07102010><FONT color=#0000ff 
size=2 face=Arial>Hello,</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=223145619-07102010><FONT color=#0000ff 
size=2 face=Arial>  patch committed as</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=223145619-07102010><FONT color=#0000ff 
size=2 face=Arial></FONT></SPAN> </DIV>
<DIV dir=ltr align=left><SPAN class=223145619-07102010><FONT color=#0000ff 
size=2 face=Arial>Revision: 2962<BR>Author: stansmith<BR>Date: 12:41:10 PM, 
Thursday, October 07, 2010<BR>Message:<BR>[IPoIB_NDIS6_CM] NDIS6 IPOIB had a 
problem with forwarding packets.</FONT></SPAN></DIV>
<DIV> </DIV>
<DIV dir=ltr align=left><SPAN class=223145619-07102010><FONT color=#0000ff 
size=2 face=Arial>The packet would be sent with one fragment size with size 0. 
<BR>The hw would than refuse to send the packet.</FONT></SPAN></DIV>
<DIV> </DIV>
<DIV dir=ltr align=left><SPAN class=223145619-07102010><FONT color=#0000ff 
size=2 face=Arial>signed-off-by: Tzachi Dar <<A 
href="mailto:tzachid@mellanox.co.il">tzachid@mellanox.co.il</A>><BR>----<BR>Modified 
: /gen1/branches/WOF2-3/ulp/ipoib_NDIS6_CM/kernel/ipoib_driver.cpp<BR>Modified : 
/gen1/branches/WOF2-3/ulp/ipoib_NDIS6_CM/kernel/ipoib_port.cpp<BR>Modified : 
/gen1/trunk/ulp/ipoib_NDIS6_CM/kernel/ipoib_driver.cpp<BR>Modified : 
/gen1/trunk/ulp/ipoib_NDIS6_CM/kernel/ipoib_port.cpp</FONT></SPAN></DIV><BR>
<DIV dir=ltr lang=en-us class=OutlookMessageHeader align=left>
<HR tabIndex=-1>
<FONT size=2 face=Tahoma><B>From:</B> Tzachi Dar [mailto:tzachid@mellanox.co.il] 
<BR><B>Sent:</B> Thursday, October 07, 2010 2:57 AM<BR><B>To:</B> Smith, Stan; 
ofw@lists.openfabrics.org<BR><B>Subject:</B> RE: [patch] fix forwarding of 
ipoib<BR></FONT><BR></DIV>
<DIV></DIV>
<DIV class=WordSection1>
<P class=MsoNormal><SPAN style="COLOR: #1f497d">Ok, here is the patch again, 
against the win-ofed tree. Please note that the patch is smaller this time only 
because of white changes that existed in the previous patch and not in this one. 
The problem in applying the patch was very likely because of the transfer to 
html. (this time the patch is also attached).<o:p></o:p></SPAN></P>
<P class=MsoNormal><SPAN style="COLOR: #1f497d"><o:p> </o:p></SPAN></P>
<P class=MsoNormal><SPAN style="COLOR: #1f497d">Please note that we are actually 
talking here about two things: 1) print that is removed (not really related, but 
I guess that at this scenario we started to print…) .2 ) In the case that the 
scatter gather list was with size 0 we remove the extra entry. The braces are 
there for clarity.<o:p></o:p></SPAN></P>
<P class=MsoNormal><SPAN style="COLOR: #1f497d"><o:p> </o:p></SPAN></P>
<P class=MsoNormal><SPAN style="COLOR: #1f497d">Thanks<o:p></o:p></SPAN></P>
<P class=MsoNormal><SPAN style="COLOR: #1f497d">Tzachi<o:p></o:p></SPAN></P>
<P class=MsoNormal><SPAN style="COLOR: #1f497d"><o:p> </o:p></SPAN></P>
<P class=MsoNormal><SPAN style="COLOR: #1f497d"><o:p> </o:p></SPAN></P>
<P class=MsoNormal><SPAN style="COLOR: #1f497d"><o:p> </o:p></SPAN></P>
<P class=MsoNormal><SPAN style="COLOR: #1f497d">Index: 
ipoib_driver.cpp<o:p></o:p></SPAN></P>
<P class=MsoNormal><SPAN 
style="COLOR: #1f497d">===================================================================<o:p></o:p></SPAN></P>
<P class=MsoNormal><SPAN style="COLOR: #1f497d">--- 
ipoib_driver.cpp         (revision 
2948)<o:p></o:p></SPAN></P>
<P class=MsoNormal><SPAN style="COLOR: #1f497d">+++ 
ipoib_driver.cpp      (working 
copy)<o:p></o:p></SPAN></P>
<P class=MsoNormal><SPAN style="COLOR: #1f497d">@@ -3178,9 +3178,6 
@@<o:p></o:p></SPAN></P>
<P class=MsoNormal><SPAN 
style="COLOR: #1f497d">                
ipoib_port_ref( p_port, ref_send_packets );<o:p></o:p></SPAN></P>
<P class=MsoNormal><SPAN 
style="COLOR: #1f497d">                
cl_obj_unlock( &p_adapter->obj );<o:p></o:p></SPAN></P>
<P class=MsoNormal><SPAN style="COLOR: #1f497d"> <o:p></o:p></SPAN></P>
<P class=MsoNormal><SPAN 
style="COLOR: #1f497d">-              
if (NET_BUFFER_LIST_NEXT_NBL(net_buffer_list) != NULL) {<o:p></o:p></SPAN></P>
<P class=MsoNormal><SPAN 
style="COLOR: #1f497d">-                              
cl_dbg_out("Recieved a list of NBLS ................\n");<o:p></o:p></SPAN></P>
<P class=MsoNormal><SPAN 
style="COLOR: #1f497d">-              
}<o:p></o:p></SPAN></P>
<P class=MsoNormal><SPAN 
style="COLOR: #1f497d">                
<o:p></o:p></SPAN></P>
<P class=MsoNormal><SPAN 
style="COLOR: #1f497d">                
for (curr_net_buffer_list = net_buffer_list;<o:p></o:p></SPAN></P>
<P class=MsoNormal><SPAN 
style="COLOR: #1f497d">                                
curr_net_buffer_list != NULL;<o:p></o:p></SPAN></P>
<P class=MsoNormal><SPAN style="COLOR: #1f497d">Index: 
ipoib_port.cpp<o:p></o:p></SPAN></P>
<P class=MsoNormal><SPAN 
style="COLOR: #1f497d">===================================================================<o:p></o:p></SPAN></P>
<P class=MsoNormal><SPAN style="COLOR: #1f497d">--- 
ipoib_port.cpp            
(revision 2959)<o:p></o:p></SPAN></P>
<P class=MsoNormal><SPAN style="COLOR: #1f497d">+++ 
ipoib_port.cpp         (working 
copy)<o:p></o:p></SPAN></P>
<P class=MsoNormal><SPAN style="COLOR: #1f497d">@@ -4245,8 +4245,10 
@@<o:p></o:p></SPAN></P>
<P class=MsoNormal><SPAN 
style="COLOR: #1f497d">                                                
p_desc->send_wr[0].local_ds[j].length =<o:p></o:p></SPAN></P>
<P class=MsoNormal><SPAN 
style="COLOR: #1f497d">                                                                
p_sgl->Elements[i].Length - EthHeaderOffset - 
DataOffset;<o:p></o:p></SPAN></P>
<P class=MsoNormal><SPAN 
style="COLOR: #1f497d">                                                
p_desc->send_wr[0].local_ds[j].lkey = 
s_buf->p_port->ib_mgr.lkey;<o:p></o:p></SPAN></P>
<P class=MsoNormal><SPAN 
style="COLOR: #1f497d">+                                             
if( p_desc->send_wr[0].local_ds[j].length > 0 ) {<o:p></o:p></SPAN></P>
<P class=MsoNormal><SPAN 
style="COLOR: #1f497d">+                                                             
j++;<o:p></o:p></SPAN></P>
<P class=MsoNormal><SPAN 
style="COLOR: #1f497d">+                                             
}            
<o:p></o:p></SPAN></P>
<P class=MsoNormal><SPAN 
style="COLOR: #1f497d">                                                
i++;<o:p></o:p></SPAN></P>
<P class=MsoNormal><SPAN 
style="COLOR: #1f497d">-                                              
j++;<o:p></o:p></SPAN></P>
<P class=MsoNormal><SPAN 
style="COLOR: #1f497d">                                                
break;<o:p></o:p></SPAN></P>
<P class=MsoNormal><SPAN 
style="COLOR: #1f497d">                                
}<o:p></o:p></SPAN></P>
<P class=MsoNormal><SPAN 
style="COLOR: #1f497d">                
}<o:p></o:p></SPAN></P>
<P class=MsoNormal><SPAN style="COLOR: #1f497d">@@ -4255,6 +4257,7 
@@<o:p></o:p></SPAN></P>
<P class=MsoNormal><SPAN 
style="COLOR: #1f497d">                
{<o:p></o:p></SPAN></P>
<P class=MsoNormal><SPAN 
style="COLOR: #1f497d">                                
p_desc->send_wr[0].local_ds[j].vaddr = 
p_sgl->Elements[i].Address.QuadPart;<o:p></o:p></SPAN></P>
<P class=MsoNormal><SPAN 
style="COLOR: #1f497d">                                
p_desc->send_wr[0].local_ds[j].length = 
p_sgl->Elements[i].Length;<o:p></o:p></SPAN></P>
<P class=MsoNormal><SPAN 
style="COLOR: #1f497d">+                             
CL_ASSERT(p_desc->send_wr[0].local_ds[j].length > 
0);<o:p></o:p></SPAN></P>
<P class=MsoNormal><SPAN 
style="COLOR: #1f497d">                                
p_desc->send_wr[0].local_ds[j].lkey = 
s_buf->p_port->ib_mgr.lkey;<o:p></o:p></SPAN></P>
<P class=MsoNormal><SPAN 
style="COLOR: #1f497d">                                
i++;<o:p></o:p></SPAN></P>
<P class=MsoNormal><SPAN 
style="COLOR: #1f497d">                                
j++;<o:p></o:p></SPAN></P>
<P class=MsoNormal><SPAN style="COLOR: #1f497d"><o:p> </o:p></SPAN></P>
<DIV 
style="BORDER-BOTTOM: medium none; BORDER-LEFT: blue 1.5pt solid; PADDING-BOTTOM: 0in; PADDING-LEFT: 4pt; PADDING-RIGHT: 0in; BORDER-TOP: medium none; BORDER-RIGHT: medium none; PADDING-TOP: 0in">
<DIV>
<DIV 
style="BORDER-BOTTOM: medium none; BORDER-LEFT: medium none; PADDING-BOTTOM: 0in; PADDING-LEFT: 0in; PADDING-RIGHT: 0in; BORDER-TOP: #b5c4df 1pt solid; BORDER-RIGHT: medium none; PADDING-TOP: 3pt">
<P class=MsoNormal><B><SPAN 
style="FONT-FAMILY: 'Tahoma','sans-serif'; FONT-SIZE: 10pt">From:</SPAN></B><SPAN 
style="FONT-FAMILY: 'Tahoma','sans-serif'; FONT-SIZE: 10pt"> Smith, Stan 
[mailto:stan.smith@intel.com] <BR><B>Sent:</B> Wednesday, October 06, 2010 10:12 
PM<BR><B>To:</B> Tzachi Dar; ofw@lists.openfabrics.org<BR><B>Subject:</B> RE: 
[patch] fix forwarding of ipoib<o:p></o:p></SPAN></P></DIV></DIV>
<P class=MsoNormal><o:p> </o:p></P>
<P class=MsoNormal><SPAN 
style="FONT-FAMILY: 'Arial','sans-serif'; COLOR: blue; FONT-SIZE: 10pt">Hello,</SPAN><SPAN 
style="FONT-FAMILY: 'Times New Roman','serif'; FONT-SIZE: 12pt"><o:p></o:p></SPAN></P>
<P class=MsoNormal><SPAN 
style="FONT-FAMILY: 'Arial','sans-serif'; COLOR: blue; FONT-SIZE: 10pt">  
What's up with posting patches from a source tree which only Mellanox employees 
can see? Please resubmit patch made against winOFED SVN if you want reasonable 
feedback.</SPAN><SPAN 
style="FONT-FAMILY: 'Times New Roman','serif'; FONT-SIZE: 12pt"><o:p></o:p></SPAN></P>
<P class=MsoNormal><SPAN 
style="FONT-FAMILY: 'Arial','sans-serif'; COLOR: blue; FONT-SIZE: 10pt">Obviously 
this patch does not apply nor is it even close...</SPAN><SPAN 
style="FONT-FAMILY: 'Times New Roman','serif'; FONT-SIZE: 12pt"><o:p></o:p></SPAN></P>
<P class=MsoNormal><SPAN 
style="FONT-FAMILY: 'Times New Roman','serif'; FONT-SIZE: 12pt"> <o:p></o:p></SPAN></P>
<P class=MsoNormal><SPAN 
style="FONT-FAMILY: 'Arial','sans-serif'; COLOR: blue; FONT-SIZE: 10pt">Another 
issue is posting patches in HTML format email, impossible to cut-n-paste; either 
plain-text or a plain-text patch file attachment - please.</SPAN><SPAN 
style="FONT-FAMILY: 'Times New Roman','serif'; FONT-SIZE: 12pt"><o:p></o:p></SPAN></P>
<P class=MsoNormal><SPAN 
style="FONT-FAMILY: 'Times New Roman','serif'; FONT-SIZE: 12pt"> <o:p></o:p></SPAN></P>
<P class=MsoNormal><SPAN 
style="FONT-FAMILY: 'Arial','sans-serif'; COLOR: blue; FONT-SIZE: 10pt">From 
what little sense the patch makes without context, it seems to follow what you 
claim it will do.</SPAN><SPAN 
style="FONT-FAMILY: 'Times New Roman','serif'; FONT-SIZE: 12pt"><o:p></o:p></SPAN></P>
<P class=MsoNormal><SPAN 
style="FONT-FAMILY: 'Times New Roman','serif'; FONT-SIZE: 12pt"> <o:p></o:p></SPAN></P>
<P class=MsoNormal><SPAN 
style="FONT-FAMILY: 'Arial','sans-serif'; COLOR: blue; FONT-SIZE: 10pt">Curly 
braces at ~4250 are not required although they might improve readability in this 
case.</SPAN><SPAN 
style="FONT-FAMILY: 'Times New Roman','serif'; FONT-SIZE: 12pt"><o:p></o:p></SPAN></P>
<P class=MsoNormal><SPAN 
style="FONT-FAMILY: 'Times New Roman','serif'; FONT-SIZE: 12pt"> <o:p></o:p></SPAN></P>
<P class=MsoNormal><SPAN 
style="FONT-FAMILY: 'Arial','sans-serif'; COLOR: blue; FONT-SIZE: 10pt">Speaking 
of code formatting @ 4250, most of the ipoib code uses the following if 
statement format:  'if(<sp>condition<sp>)' why do you 
deviate?</SPAN><SPAN 
style="FONT-FAMILY: 'Times New Roman','serif'; FONT-SIZE: 12pt"><o:p></o:p></SPAN></P>
<P class=MsoNormal><SPAN 
style="FONT-FAMILY: 'Arial','sans-serif'; COLOR: blue; FONT-SIZE: 10pt">Also 
4260.</SPAN><SPAN 
style="FONT-FAMILY: 'Times New Roman','serif'; FONT-SIZE: 12pt"><o:p></o:p></SPAN></P>
<P class=MsoNormal><SPAN 
style="FONT-FAMILY: 'Times New Roman','serif'; FONT-SIZE: 12pt"> <o:p></o:p></SPAN></P>
<P class=MsoNormal><SPAN 
style="FONT-FAMILY: 'Arial','sans-serif'; COLOR: blue; FONT-SIZE: 10pt">Why do I 
care, for the same reasons the Linux community and Microsoft cares.</SPAN><SPAN 
style="FONT-FAMILY: 'Times New Roman','serif'; FONT-SIZE: 12pt"><o:p></o:p></SPAN></P>
<P class=MsoNormal><SPAN 
style="FONT-FAMILY: 'Times New Roman','serif'; FONT-SIZE: 12pt"> <o:p></o:p></SPAN></P>
<P class=MsoNormal><SPAN 
style="FONT-FAMILY: 'Arial','sans-serif'; COLOR: blue; FONT-SIZE: 10pt">The 
'return' statement @ ~8709, if this is the end of build_send_desc() then it 
needs to return a value?</SPAN><SPAN 
style="FONT-FAMILY: 'Times New Roman','serif'; FONT-SIZE: 12pt"><o:p></o:p></SPAN></P>
<DIV>
<P class=MsoNormal><SPAN 
style="FONT-FAMILY: 'Times New Roman','serif'; FONT-SIZE: 12pt"> <o:p></o:p></SPAN></P></DIV>
<DIV>
<P class=MsoNormal><SPAN 
style="FONT-FAMILY: 'Arial','sans-serif'; COLOR: blue; FONT-SIZE: 10pt">grumpy 
stan.</SPAN><SPAN 
style="FONT-FAMILY: 'Times New Roman','serif'; FONT-SIZE: 12pt"><o:p></o:p></SPAN></P></DIV>
<P class=MsoNormal><SPAN 
style="FONT-FAMILY: 'Times New Roman','serif'; FONT-SIZE: 12pt"><o:p> </o:p></SPAN></P>
<DIV style="TEXT-ALIGN: center" class=MsoNormal align=center><SPAN 
style="FONT-FAMILY: 'Times New Roman','serif'; FONT-SIZE: 12pt">
<HR align=center SIZE=2 width="100%">
</SPAN></DIV>
<P style="MARGIN-BOTTOM: 12pt" class=MsoNormal><B><SPAN 
style="FONT-FAMILY: 'Tahoma','sans-serif'; FONT-SIZE: 10pt">From:</SPAN></B><SPAN 
style="FONT-FAMILY: 'Tahoma','sans-serif'; FONT-SIZE: 10pt"> 
ofw-bounces@lists.openfabrics.org [mailto:ofw-bounces@lists.openfabrics.org] 
<B>On Behalf Of </B>Tzachi Dar<BR><B>Sent:</B> Wednesday, October 06, 2010 9:42 
AM<BR><B>To:</B> ofw@lists.openfabrics.org<BR><B>Subject:</B> [ofw] [patch] fix 
forwarding of ipoib</SPAN><SPAN 
style="FONT-FAMILY: 'Times New Roman','serif'; FONT-SIZE: 12pt"><o:p></o:p></SPAN></P>
<P class=MsoNormal>It seems that we had a problem with forwarding packets. The 
packet would be sent with one fragment size with size 0. The hw would than 
refuse to send the packet.<o:p></o:p></P>
<P class=MsoNormal><o:p> </o:p></P>
<P class=MsoNormal>Thanks<o:p></o:p></P>
<P class=MsoNormal>Tzachi<o:p></o:p></P>
<P class=MsoNormal><o:p> </o:p></P>
<P class=MsoNormal>Index: 
b:/users/tzachid/projinf6/trunk/ulp/ipoib_NDIS6_CM/kernel/ipoib_port.cpp<o:p></o:p></P>
<P 
class=MsoNormal>===================================================================<o:p></o:p></P>
<P class=MsoNormal>--- 
b:/users/tzachid/projinf6/trunk/ulp/ipoib_NDIS6_CM/kernel/ipoib_port.cpp              
(revision 6618)<o:p></o:p></P>
<P class=MsoNormal>+++ 
b:/users/tzachid/projinf6/trunk/ulp/ipoib_NDIS6_CM/kernel/ipoib_port.cpp           
(revision 6619)<o:p></o:p></P>
<P class=MsoNormal>@@ -1154,7 +1154,7 @@<o:p></o:p></P>
<P 
class=MsoNormal>                                
return status;<o:p></o:p></P>
<P 
class=MsoNormal>                
}<o:p></o:p></P>
<P 
class=MsoNormal>                
p_port->ib_mgr.qpn = qp_attr.num;<o:p></o:p></P>
<P class=MsoNormal>-<o:p></o:p></P>
<P class=MsoNormal>+    <o:p></o:p></P>
<P 
class=MsoNormal>                
/* Register all of physical memory */<o:p></o:p></P>
<P 
class=MsoNormal>                
phys_create.length = MEM_REG_SIZE;<o:p></o:p></P>
<P 
class=MsoNormal>                
phys_create.num_ranges = 1;<o:p></o:p></P>
<P class=MsoNormal>@@ -4247,8 +4247,10 @@<o:p></o:p></P>
<P 
class=MsoNormal>                                                
p_desc->send_wr[0].local_ds[j].length =<o:p></o:p></P>
<P 
class=MsoNormal>                                                                
p_sgl->Elements[i].Length - EthHeaderOffset - DataOffset;<o:p></o:p></P>
<P 
class=MsoNormal>                                                
p_desc->send_wr[0].local_ds[j].lkey = 
s_buf->p_port->ib_mgr.lkey;<o:p></o:p></P>
<P 
class=MsoNormal>+                                             
if(p_desc->send_wr[0].local_ds[j].length > 0) {<o:p></o:p></P>
<P 
class=MsoNormal>+                                                             
j++;<o:p></o:p></P>
<P 
class=MsoNormal>+                                             
}            
<o:p></o:p></P>
<P 
class=MsoNormal>                                                
i++;<o:p></o:p></P>
<P 
class=MsoNormal>-                                              
j++;<o:p></o:p></P>
<P 
class=MsoNormal>                                                
break;<o:p></o:p></P>
<P 
class=MsoNormal>                                
}<o:p></o:p></P>
<P 
class=MsoNormal>                
}<o:p></o:p></P>
<P class=MsoNormal>@@ -4257,6 +4259,7 @@<o:p></o:p></P>
<P 
class=MsoNormal>                
{<o:p></o:p></P>
<P 
class=MsoNormal>                                
p_desc->send_wr[0].local_ds[j].vaddr = 
p_sgl->Elements[i].Address.QuadPart;<o:p></o:p></P>
<P 
class=MsoNormal>                                
p_desc->send_wr[0].local_ds[j].length = 
p_sgl->Elements[i].Length;<o:p></o:p></P>
<P 
class=MsoNormal>+                             
CL_ASSERT(p_desc->send_wr[0].local_ds[j].length > 0);<o:p></o:p></P>
<P 
class=MsoNormal>                                
p_desc->send_wr[0].local_ds[j].lkey = 
s_buf->p_port->ib_mgr.lkey;<o:p></o:p></P>
<P 
class=MsoNormal>                                
i++;<o:p></o:p></P>
<P 
class=MsoNormal>                                
j++;<o:p></o:p></P>
<P class=MsoNormal>@@ -5219,7 +5222,7 @@<o:p></o:p></P>
<P 
class=MsoNormal>                                                                
p_desc->send_wr[i-1].wr.p_next = 
&p_desc->send_wr[i].wr;<o:p></o:p></P>
<P 
class=MsoNormal>                                                
}<o:p></o:p></P>
<P 
class=MsoNormal>                                
}<o:p></o:p></P>
<P 
class=MsoNormal>-                              
<o:p></o:p></P>
<P class=MsoNormal>+<o:p></o:p></P>
<P 
class=MsoNormal>                                
p_desc->send_wr[p_desc->num_wrs - 1].wr.wr_id = (uintn_t)s_buf 
;<o:p></o:p></P>
<P 
class=MsoNormal>                                
p_desc->send_wr[p_desc->num_wrs - 1].wr.send_opt |= 
IB_SEND_OPT_SIGNALED;<o:p></o:p></P>
<P 
class=MsoNormal>                                
p_desc->send_wr[p_desc->num_wrs - 1].wr.p_next = NULL;<o:p></o:p></P>
<P class=MsoNormal>@@ -8708,4 +8711,4 @@<o:p></o:p></P>
<P 
class=MsoNormal>                
}<o:p></o:p></P>
<P 
class=MsoNormal>                
return;<o:p></o:p></P>
<P class=MsoNormal> }<o:p></o:p></P>
<P class=MsoNormal>-#endif<o:p></o:p></P>
<P class=MsoNormal>\ No newline at end of file<o:p></o:p></P>
<P class=MsoNormal>+#endif<o:p></o:p></P>
<P class=MsoNormal>Index: 
b:/users/tzachid/projinf6/trunk/ulp/ipoib_NDIS6_CM/kernel/ipoib_driver.cpp<o:p></o:p></P>
<P 
class=MsoNormal>===================================================================<o:p></o:p></P>
<P class=MsoNormal>--- 
b:/users/tzachid/projinf6/trunk/ulp/ipoib_NDIS6_CM/kernel/ipoib_driver.cpp          
(revision 6618)<o:p></o:p></P>
<P class=MsoNormal>+++ 
b:/users/tzachid/projinf6/trunk/ulp/ipoib_NDIS6_CM/kernel/ipoib_driver.cpp       
(revision 6619)<o:p></o:p></P>
<P class=MsoNormal>@@ -3178,9 +3178,6 @@<o:p></o:p></P>
<P 
class=MsoNormal>                
ipoib_port_ref( p_port, ref_send_packets );<o:p></o:p></P>
<P 
class=MsoNormal>                
cl_obj_unlock( &p_adapter->obj );<o:p></o:p></P>
<P class=MsoNormal> <o:p></o:p></P>
<P 
class=MsoNormal>-              
if (NET_BUFFER_LIST_NEXT_NBL(net_buffer_list) != NULL) {<o:p></o:p></P>
<P 
class=MsoNormal>-                              
cl_dbg_out("Recieved a list of NBLS ................\n");<o:p></o:p></P>
<P 
class=MsoNormal>-              
}<o:p></o:p></P>
<P 
class=MsoNormal>                
<o:p></o:p></P>
<P 
class=MsoNormal>                
for (curr_net_buffer_list = net_buffer_list;<o:p></o:p></P>
<P 
class=MsoNormal>                                
curr_net_buffer_list != NULL;<o:p></o:p></P></DIV></DIV></BODY></HTML>