<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns="http://www.w3.org/TR/REC-html40"
xmlns:ns1="http://schemas.microsoft.com/office/2004/12/omml">

<head>
<meta http-equiv=Content-Type content="text/html; charset=us-ascii">
<meta name=Generator content="Microsoft Word 11 (filtered medium)">
<!--[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>
<!--a:link
        {mso-style-priority: 99
;}
span.MSOHYPERLINK
        {mso-style-priority: 99
;}
a:visited
        {mso-style-priority: 99
;}
span.MSOHYPERLINKFOLLOWED
        {mso-style-priority: 99
;}
p
        {mso-style-priority: 99
;}

 /* Font Definitions */
 @font-face
        {font-family:Tahoma;
        panose-1:2 11 6 4 3 5 4 4 2 4;}
@font-face
        {font-family:Verdana;
        panose-1:2 11 6 4 3 5 4 4 2 4;}
@font-face
        {font-family:Webdings;
        panose-1:5 3 1 2 1 5 9 6 7 3;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
 /* Style Definitions */
 p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        margin-bottom:.0001pt;
        font-size:12.0pt;
        font-family:"Times New Roman";}
a:link, span.MsoHyperlink
        {color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {color:purple;
        text-decoration:underline;}
p
        {mso-margin-top-alt:auto;
        margin-right:0in;
        mso-margin-bottom-alt:auto;
        margin-left:0in;
        font-size:12.0pt;
        font-family:"Times New Roman";}
span.EmailStyle18
        {mso-style-type:personal;
        font-family:Arial;
        color:windowtext;}
span.EmailStyle19
        {mso-style-type:personal;
        font-family:Arial;
        color:navy;}
span.EmailStyle20
        {mso-style-type:personal;
        font-family:Calibri;
        color:#1F497D;}
span.EmailStyle21
        {mso-style-type:personal;
        font-family:Arial;
        color:navy;}
span.EmailStyle22
        {mso-style-type:personal;
        font-family:Arial;
        color:navy;}
span.EmailStyle23
        {mso-style-type:personal-reply;
        font-family:Arial;
        color:navy;}
@page Section1
        {size:8.5in 11.0in;
        margin:1.0in 1.25in 1.0in 1.25in;}
div.Section1
        {page:Section1;}
-->
</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 class=Section1>

<p class=MsoNormal style='text-autospace:none'><font size=2 color=navy
face=Arial><span style='font-size:10.0pt;font-family:Arial;color:navy'>It seems
it’s a false alarm because p_list is not reset when an item is removed.
One more line is needed “</span></font><font size=2 color=red
face="Courier New"><span style='font-size:10.0pt;font-family:"Courier New";
color:red'>p_list_item->p_list = NULL;”<o:p></o:p></span></font></p>

<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:navy'>in function </span></font><font size=2
face="Courier New"><span style='font-size:10.0pt;font-family:"Courier New"'>__cl_primitive_remove().<o:p></o:p></span></font></p>

<p class=MsoNormal><font size=2 face="Courier New"><span style='font-size:10.0pt;
font-family:"Courier New"'><o:p> </o:p></span></font></p>

<p class=MsoNormal><font size=2 face="Courier New"><span style='font-size:10.0pt;
font-family:"Courier New"'>Can this line be added to the svn?<o:p></o:p></span></font></p>

<p class=MsoNormal><font size=2 face="Courier New"><span style='font-size:10.0pt;
font-family:"Courier New"'><o:p> </o:p></span></font></p>

<p class=MsoNormal><font size=2 face="Courier New"><span style='font-size:10.0pt;
font-family:"Courier New"'>Thanks,<o:p></o:p></span></font></p>

<p class=MsoNormal><font size=2 face="Courier New"><span style='font-size:10.0pt;
font-family:"Courier New"'>James</span></font><font size=2 color=navy
face=Arial><span style='font-size:10.0pt;font-family:Arial;color:navy'><o:p></o:p></span></font></p>

<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:navy'><o:p> </o:p></span></font></p>

<p class=MsoNormal style='text-autospace:none'><font size=2 face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New"'>CL_INLINE <font color=blue><span
style='color:blue'>void</span></font> CL_API<o:p></o:p></span></font></p>

<p class=MsoNormal style='text-autospace:none'><font size=2 face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New"'>__cl_primitive_remove(<o:p></o:p></span></font></p>

<p class=MsoNormal style='text-autospace:none'><font size=2 face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New"'>      IN    cl_list_item_t*
<font color=blue><span style='color:blue'>const</span></font>   p_list_item
)<o:p></o:p></span></font></p>

<p class=MsoNormal style='text-autospace:none'><font size=2 face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New"'>{<o:p></o:p></span></font></p>

<p class=MsoNormal style='text-autospace:none'><font size=2 face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New"'>      <font
color=green><span style='color:green'>/* CL_ASSERT that a non-null pointer is
provided. */<o:p></o:p></span></font></span></font></p>

<p class=MsoNormal style='text-autospace:none'><font size=2 face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New"'>      CL_ASSERT(
p_list_item );<o:p></o:p></span></font></p>

<p class=MsoNormal style='text-autospace:none'><font size=2 face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New"'>      CL_ASSERT(
p_list_item->p_next );<o:p></o:p></span></font></p>

<p class=MsoNormal style='text-autospace:none'><font size=2 face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New"'>      CL_ASSERT(
p_list_item->p_prev );<o:p></o:p></span></font></p>

<p class=MsoNormal style='text-autospace:none'><font size=2 face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New"'><o:p> </o:p></span></font></p>

<p class=MsoNormal style='text-autospace:none'><font size=2 face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New"'>      <font
color=green><span style='color:green'>/* set the back pointer */<o:p></o:p></span></font></span></font></p>

<p class=MsoNormal style='text-autospace:none'><font size=2 face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New"'>      p_list_item->p_next->p_prev=
p_list_item->p_prev;<o:p></o:p></span></font></p>

<p class=MsoNormal style='text-autospace:none'><font size=2 face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New"'>      <font
color=green><span style='color:green'>/* set the next pointer */<o:p></o:p></span></font></span></font></p>

<p class=MsoNormal style='text-autospace:none'><font size=2 face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New"'>      p_list_item->p_prev->p_next=
p_list_item->p_next;<o:p></o:p></span></font></p>

<p class=MsoNormal style='text-autospace:none'><font size=2 face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New"'><o:p> </o:p></span></font></p>

<p class=MsoNormal style='text-autospace:none'><font size=2 face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New"'>      <font
color=green><span style='color:green'>/* if we're debugging, spruce up the
pointers to help find bugs */<o:p></o:p></span></font></span></font></p>

<p class=MsoNormal style='text-autospace:none'><font size=2 color=blue
face="Courier New"><span style='font-size:10.0pt;font-family:"Courier New";
color:blue'>#if</span></font><font size=2 face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New"'> <font color=blue><span
style='color:blue'>defined</span></font>( _DEBUG_ )<o:p></o:p></span></font></p>

<p class=MsoNormal style='text-autospace:none'><font size=2 color=gray
face="Courier New"><span style='font-size:10.0pt;font-family:"Courier New";
color:gray'>      if( p_list_item !=
p_list_item->p_next )<o:p></o:p></span></font></p>

<p class=MsoNormal style='text-autospace:none'><font size=2 color=gray
face="Courier New"><span style='font-size:10.0pt;font-family:"Courier New";
color:gray'>      {<o:p></o:p></span></font></p>

<p class=MsoNormal style='text-autospace:none'><font size=2 color=gray
face="Courier New"><span style='font-size:10.0pt;font-family:"Courier New";
color:gray'>            p_list_item->p_next
= NULL;<o:p></o:p></span></font></p>

<p class=MsoNormal style='text-autospace:none'><font size=2 color=gray
face="Courier New"><span style='font-size:10.0pt;font-family:"Courier New";
color:gray'>            p_list_item->p_prev
= NULL;<o:p></o:p></span></font></p>

<p class=MsoNormal style='text-autospace:none'><font size=2 color=gray
face="Courier New"><span style='font-size:10.0pt;font-family:"Courier New";
color:gray'>            </span></font><font
size=2 color=red face="Courier New"><span style='font-size:10.0pt;font-family:
"Courier New";color:red'>p_list_item->p_list = NULL;<o:p></o:p></span></font></p>

<p class=MsoNormal style='text-autospace:none'><font size=2 color=gray
face="Courier New"><span style='font-size:10.0pt;font-family:"Courier New";
color:gray'>      }<o:p></o:p></span></font></p>

<p class=MsoNormal style='text-autospace:none'><font size=2 color=blue
face="Courier New"><span style='font-size:10.0pt;font-family:"Courier New";
color:blue'>#endif</span></font><font size=2 face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New"'>      <font
color=green><span style='color:green'>/* defined( _DEBUG_ ) */<o:p></o:p></span></font></span></font></p>

<p class=MsoNormal style='text-autospace:none'><font size=2 face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New"'>}<o:p></o:p></span></font></p>

<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:navy'><o:p> </o:p></span></font></p>

<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:navy'><o:p> </o:p></span></font></p>

<div>

<div class=MsoNormal align=center style='text-align:center'><font size=3
face="Times New Roman"><span style='font-size:12.0pt'>

<hr size=2 width="100%" align=center tabindex=-1>

</span></font></div>

<p class=MsoNormal><b><font size=2 face=Tahoma><span style='font-size:10.0pt;
font-family:Tahoma;font-weight:bold'>From:</span></font></b><font size=2
face=Tahoma><span style='font-size:10.0pt;font-family:Tahoma'> Tzachi Dar
[mailto:tzachid@mellanox.co.il] <br>
<b><span style='font-weight:bold'>Sent:</span></b> Thursday, June 19, 2008
12:07 PM<br>
<b><span style='font-weight:bold'>To:</span></b> Sean Hefty; James Yang; Fab
Tillier; ofw@lists.openfabrics.org<br>
<b><span style='font-weight:bold'>Subject:</span></b> RE: [ofw] RE: Assert in
checked ibbus driver?</span></font><o:p></o:p></p>

</div>

<p class=MsoNormal><font size=3 face="Times New Roman"><span style='font-size:
12.0pt'><o:p> </o:p></span></font></p>

<div>

<p class=MsoNormal><font size=2 color=blue face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:blue'>From a fast reading of the file CL_qlist.h
it seems that all "remove functions" clear the </span></font><font
size=2 color=blue face="Courier New"><span style='font-size:10.0pt;font-family:
"Courier New";color:blue'>p_list_item->p_list  field. So I guess that
most chances that this is a real bug. Can you try and add a printing to each
time you add or remove an object from the gp_mem_tracker list?</span></font><o:p></o:p></p>

</div>

<div>

<p class=MsoNormal><font size=3 face="Times New Roman"><span style='font-size:
12.0pt'> <o:p></o:p></span></font></p>

</div>

<div>

<p class=MsoNormal><font size=2 color=blue face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New";color:blue'>Thanks</span></font><o:p></o:p></p>

</div>

<div>

<p class=MsoNormal><font size=2 color=blue face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New";color:blue'>Tzachi</span></font><o:p></o:p></p>

</div>

<blockquote style='border:none;border-left:solid blue 1.5pt;padding:0in 0in 0in 4.0pt;
margin-left:3.75pt;margin-top:5.0pt;margin-right:0in;margin-bottom:5.0pt'>

<div style='border:none;border-left:solid blue 1.5pt;padding:0in 0in 0in 4.0pt'>

<p class=MsoNormal><font size=3 face="Times New Roman"><span style='font-size:
12.0pt'> <o:p></o:p></span></font></p>

<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:navy'><o:p> </o:p></span></font></p>

<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:navy'>I can see item’s p_list pointer
being cleared when it’s removed from the list. My guess is p_list is left
over there when items are allocated from free memory. I’m not familiar
with the code enough to find all these items and clear them during
initialization. It’s odd to see p_list value was there but not p_prev and
p_next.<o:p></o:p></span></font></p>

<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:navy'><o:p> </o:p></span></font></p>

<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:navy'>If I ignore the assertion, it will be OK.
However the assert will come once again, especially during startup and
shutdown.<o:p></o:p></span></font></p>

<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:navy'><o:p> </o:p></span></font></p>

<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:navy'>Thanks,<o:p></o:p></span></font></p>

<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:navy'>James<o:p></o:p></span></font></p>

<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:navy'><o:p> </o:p></span></font></p>

<div>

<div class=MsoNormal align=center style='text-align:center'><font size=3
face="Times New Roman"><span style='font-size:12.0pt'>

<hr size=2 width="100%" align=center tabIndex=-1>

</span></font></div>

<p class=MsoNormal><b><font size=2 face=Tahoma><span style='font-size:10.0pt;
font-family:Tahoma;font-weight:bold'>From:</span></font></b><font size=2
face=Tahoma><span style='font-size:10.0pt;font-family:Tahoma'> Fab Tillier
[mailto:ftillier@windows.microsoft.com] <br>
<b><span style='font-weight:bold'>Sent:</span></b> Thursday, June 19, 2008 9:11
AM<br>
<b><span style='font-weight:bold'>To:</span></b> James Yang;
ofw@lists.openfabrics.org<br>
<b><span style='font-weight:bold'>Subject:</span></b> RE: Assert in checked
ibbus driver?</span></font><o:p></o:p></p>

</div>

<p class=MsoNormal><font size=3 face="Times New Roman"><span style='font-size:
12.0pt'><o:p> </o:p></span></font></p>

<p class=MsoNormal><font size=2 color="#1f497d" face=Calibri><span
style='font-size:11.0pt;font-family:Calibri;color:#1F497D'>Hi James,<o:p></o:p></span></font></p>

<p class=MsoNormal><font size=2 color="#1f497d" face=Calibri><span
style='font-size:11.0pt;font-family:Calibri;color:#1F497D'><o:p> </o:p></span></font></p>

<p class=MsoNormal><font size=2 color="#1f497d" face=Calibri><span
style='font-size:11.0pt;font-family:Calibri;color:#1F497D'>If you clear the
p_list pointer does the assert go away?<o:p></o:p></span></font></p>

<p class=MsoNormal><font size=2 color="#1f497d" face=Calibri><span
style='font-size:11.0pt;font-family:Calibri;color:#1F497D'><o:p> </o:p></span></font></p>

<p class=MsoNormal><font size=2 color="#1f497d" face=Calibri><span
style='font-size:11.0pt;font-family:Calibri;color:#1F497D'>-Fab<o:p></o:p></span></font></p>

<p class=MsoNormal><font size=2 color="#1f497d" face=Calibri><span
style='font-size:11.0pt;font-family:Calibri;color:#1F497D'><o:p> </o:p></span></font></p>

<div style='border:none;border-left:solid blue 1.5pt;padding:0in 0in 0in 4.0pt'>

<div>

<div style='border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0in 0in 0in'>

<p class=MsoNormal><b><font size=2 face=Tahoma><span style='font-size:10.0pt;
font-family:Tahoma;font-weight:bold'>From:</span></font></b><font size=2
face=Tahoma><span style='font-size:10.0pt;font-family:Tahoma'>
ofw-bounces@lists.openfabrics.org [mailto:ofw-bounces@lists.openfabrics.org] <b><span
style='font-weight:bold'>On Behalf Of </span></b>James Yang<br>
<b><span style='font-weight:bold'>Sent:</span></b> Wednesday, June 18, 2008
6:05 PM<br>
<b><span style='font-weight:bold'>To:</span></b> ofw@lists.openfabrics.org<br>
<b><span style='font-weight:bold'>Subject:</span></b> [ofw] Assert in checked
ibbus driver?<o:p></o:p></span></font></p>

</div>

</div>

<p class=MsoNormal><font size=3 face="Times New Roman"><span style='font-size:
12.0pt'><o:p> </o:p></span></font></p>

<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:navy'>Can someone shed some light on the
following assert I saw in checked build driver?<o:p></o:p></span></font></p>

<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:navy'><o:p> </o:p></span></font></p>

<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:navy'>It happened in the function </span></font><font
size=2 face="Courier New"><span New?? Courier><span style='font-size:10.0pt;
font-family:"Courier New"'>cl_qlist_insert_head()</span></span></font><font
size=2 color=navy face=Arial><span style='font-size:10.0pt;font-family:Arial;
color:navy'> when a new item is added to the list. And the assertion happens
because it thinks the item is already in the list. However when checking the
list item, I don’t see it is linked because its previous and next
pointers are both NULL. The item is also is not in the list by manually checking
the list.<o:p></o:p></span></font></p>

<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:navy'><o:p> </o:p></span></font></p>

<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:navy'>Is this because the item is not
initialized properly as it’s said in the comments, or it’s a true
bug? <o:p></o:p></span></font></p>

<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:navy'><o:p> </o:p></span></font></p>

<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:navy'>Thanks,<o:p></o:p></span></font></p>

<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:navy'>James<o:p></o:p></span></font></p>

<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:navy'><o:p> </o:p></span></font></p>

<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:navy'>----------------------<o:p></o:p></span></font></p>

<p class=MsoNormal><font size=2 face="Courier New"><span New?? Courier><span
style='font-size:10.0pt;font-family:"Courier New"'>CL_INLINE <font color=blue><span
style='color:blue'>void</span></font> CL_API<o:p></o:p></span></font></p>

</span>

<p class=MsoNormal><font size=2 face="Courier New"><span New?? Courier><span
style='font-size:10.0pt;font-family:"Courier New"'>cl_qlist_insert_head(<o:p></o:p></span></font></p>

</span>

<p class=MsoNormal><font size=2 face="Courier New"><span New?? Courier><span
style='font-size:10.0pt;font-family:"Courier New"'>     
IN    cl_qlist_t* <font color=blue><span style='color:blue'>const</span></font>      
p_list,<o:p></o:p></span></font></p>

</span>

<p class=MsoNormal><font size=2 face="Courier New"><span New?? Courier><span
style='font-size:10.0pt;font-family:"Courier New"'>     
IN    cl_list_item_t* <font color=blue><span style='color:blue'>const</span></font>  
p_list_item )<o:p></o:p></span></font></p>

</span>

<p class=MsoNormal><font size=2 face="Courier New"><span New?? Courier><span
style='font-size:10.0pt;font-family:"Courier New"'>{<o:p></o:p></span></font></p>

</span>

<p class=MsoNormal><font size=2 face="Courier New"><span New?? Courier><span
style='font-size:10.0pt;font-family:"Courier New"'>     
<font color=green><span style='color:green'>/* CL_ASSERT that a non-null
pointer is provided. */<o:p></o:p></span></font></span></font></p>

</span>

<p class=MsoNormal><font size=2 face="Courier New"><span New?? Courier><span
style='font-size:10.0pt;font-family:"Courier New"'>     
CL_ASSERT( p_list );<o:p></o:p></span></font></p>

</span>

<p class=MsoNormal><font size=2 face="Courier New"><span New?? Courier><span
style='font-size:10.0pt;font-family:"Courier New"'>     
<font color=green><span style='color:green'>/* CL_ASSERT that a non-null
pointer is provided. */<o:p></o:p></span></font></span></font></p>

</span>

<p class=MsoNormal><font size=2 face="Courier New"><span New?? Courier><span
style='font-size:10.0pt;font-family:"Courier New"'>     
CL_ASSERT( p_list_item );<o:p></o:p></span></font></p>

</span>

<p class=MsoNormal><font size=2 face="Courier New"><span New?? Courier><span
style='font-size:10.0pt;font-family:"Courier New"'>     
<font color=green><span style='color:green'>/* CL_ASSERT that the list was initialized.
*/<o:p></o:p></span></font></span></font></p>

</span>

<p class=MsoNormal><font size=2 face="Courier New"><span New?? Courier><span
style='font-size:10.0pt;font-family:"Courier New"'>     
CL_ASSERT( p_list->state == CL_INITIALIZED );<o:p></o:p></span></font></p>

</span>

<p class=MsoNormal><font size=2 face="Courier New"><span New?? Courier><span
style='font-size:10.0pt;font-family:"Courier New"'><o:p> </o:p></span></font></p>

</span>

<p class=MsoNormal><font size=2 face="Courier New"><span New?? Courier><span
style='font-size:10.0pt;font-family:"Courier New"'>     
<font color=green><span style='color:green'>/*<o:p></o:p></span></font></span></font></p>

</span>

<p class=MsoNormal><font size=2 color=green face="Courier New"><span Courier
color:green? New?;><span style='font-size:10.0pt;font-family:"Courier New";
color:green'>       * The list item must not
already be part of the list.  Note that this<o:p></o:p></span></font></p>

</span>

<p class=MsoNormal><font size=2 color=green face="Courier New"><span Courier
color:green? New?;><span style='font-size:10.0pt;font-family:"Courier New";
color:green'>       * assertion may fail if an
uninitialized list item happens to have its<o:p></o:p></span></font></p>

</span>

<p class=MsoNormal><font size=2 color=green face="Courier New"><span Courier
color:green? New?;><span style='font-size:10.0pt;font-family:"Courier New";
color:green'>       * list pointer equal to the
specified list.  The chances of this<o:p></o:p></span></font></p>

</span>

<p class=MsoNormal><font size=2 color=green face="Courier New"><span Courier
color:green? New?;><span style='font-size:10.0pt;font-family:"Courier New";
color:green'>       * happening are acceptable in
light of the value of this check.<o:p></o:p></span></font></p>

</span>

<p class=MsoNormal><font size=2 color=green face="Courier New"><span Courier
color:green? New?;><span style='font-size:10.0pt;font-family:"Courier New";
color:green'>       */<o:p></o:p></span></font></p>

</span>

<p class=MsoNormal><font size=2 face="Courier New"><span New?? Courier><span
style='font-size:10.0pt;font-family:"Courier New"'>     
<font color=red><span style='color:red'>CL_ASSERT( p_list_item->p_list !=
p_list );<o:p></o:p></span></font></span></font></p>

</span>

<p class=MsoNormal><font size=2 face="Courier New"><span New?? Courier><span
style='font-size:10.0pt;font-family:"Courier New"'><o:p> </o:p></span></font></p>

</span>

<p class=MsoNormal><font size=2 color=blue face="Courier New"><span Courier
New?; color:blue?><span style='font-size:10.0pt;font-family:"Courier New";
color:blue'>#if</span></span></font><font size=2 face="Courier New"><span New??
Courier><span style='font-size:10.0pt;font-family:"Courier New"'> <font
color=blue><span style='color:blue'>defined</span></font>( _DEBUG_ )<o:p></o:p></span></font></p>

</span>

<p class=MsoNormal><font size=2 face="Courier New"><span New?? Courier><span
style='font-size:10.0pt;font-family:"Courier New"'>     
p_list_item->p_list = p_list;<o:p></o:p></span></font></p>

</span>

<p class=MsoNormal><font size=2 color=blue face="Courier New"><span Courier
New?; color:blue?><span style='font-size:10.0pt;font-family:"Courier New";
color:blue'>#endif<o:p></o:p></span></font></p>

</span>

<p class=MsoNormal><font size=2 color=blue face="Courier New"><span Courier
New?; color:blue?><span style='font-size:10.0pt;font-family:"Courier New";
color:blue'><o:p> </o:p></span></font></p>

</span>

<p class=MsoNormal><font size=2 face="Courier New"><span New?? Courier><span
style='font-size:10.0pt;font-family:"Courier New"'>     
<font color=green><span style='color:green'>/* Insert before the head. */<o:p></o:p></span></font></span></font></p>

</span>

<p class=MsoNormal><font size=2 face="Courier New"><span New?? Courier><span
style='font-size:10.0pt;font-family:"Courier New"'>     
__cl_primitive_insert( cl_qlist_head( p_list ), p_list_item );<o:p></o:p></span></font></p>

</span>

<p class=MsoNormal><font size=2 face="Courier New"><span New?? Courier><span
style='font-size:10.0pt;font-family:"Courier New"'><o:p> </o:p></span></font></p>

</span>

<p class=MsoNormal><font size=2 face="Courier New"><span New?? Courier><span
style='font-size:10.0pt;font-family:"Courier New"'>     
p_list->count++;<o:p></o:p></span></font></p>

</span>

<p class=MsoNormal><font size=2 face="Courier New"><span New?? Courier><span
style='font-size:10.0pt;font-family:"Courier New"'>}<o:p></o:p></span></font></p>

</span>

<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:navy'><o:p> </o:p></span></font></p>

<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:navy'><o:p> </o:p></span></font></p>

<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:navy'>1: kd> k<o:p></o:p></span></font></p>

<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:navy'>ChildEBP RetAddr  <o:p></o:p></span></font></p>

<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:navy'>f795e9fc 80873922 nt!DbgBreakPoint<o:p></o:p></span></font></p>

<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:navy'>f795ece4 f71588c4 nt!RtlAssert+0xba<o:p></o:p></span></font></p>

<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:navy'>f795ed0c f715a5df ibbus!cl_qlist_insert_head+0xb4
[k:\windows-openib\inc\complib\cl_qlist.h @ 782]<o:p></o:p></span></font></p>

<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:navy'>f795ed24 f71b08da ibbus!__cl_free_trk+0x6f
[k:\windows-openib\\core\complib\cl_memory.c @ 342]<o:p></o:p></span></font></p>

<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:navy'>f795ed38 f7218e8d
ibbus!__pnp_reg_free+0xfa [k:\windows-openib\\core\al\kernel\al_pnp.c @ 386]<o:p></o:p></span></font></p>

<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:navy'>f795ed70 f715c0e4
ibbus!async_destroy_cb+0x72d [k:\windows-openib\\core\al\al_common.c @ 685]<o:p></o:p></span></font></p>

<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:navy'>f795ed8c f7162534
ibbus!__cl_async_proc_worker+0x94
[k:\windows-openib\core\complib\cl_async_proc.c @ 153]<o:p></o:p></span></font></p>

<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:navy'>f795eda0 f71645ec
ibbus!__cl_thread_pool_routine+0x54
[k:\windows-openib\core\complib\cl_threadpool.c @ 67]<o:p></o:p></span></font></p>

<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:navy'>f795edac 80949b7c
ibbus!__thread_callback+0x2c [k:\windows-openib\core\complib\kernel\cl_thread.c
@ 49]<o:p></o:p></span></font></p>

<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:navy'>f795eddc 8088e062
nt!PspSystemThreadStartup+0x2e<o:p></o:p></span></font></p>

<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:navy'>00000000 00000000 nt!KiThreadStartup+0x16<o:p></o:p></span></font></p>

<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:navy'><o:p> </o:p></span></font></p>

<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:navy'>1: kd> dt 0x863416a0 _cl_qlist <o:p></o:p></span></font></p>

<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:navy'>   +0x000
end             
: _cl_list_item<o:p></o:p></span></font></p>

<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:navy'>   +0x00c
count            : 0x29<o:p></o:p></span></font></p>

<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:navy'>   +0x010
state            : 2 (
CL_INITIALIZED )<o:p></o:p></span></font></p>

<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:navy'>1: kd> dt 0x85485268 _cl_list_item <o:p></o:p></span></font></p>

<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:navy'>   +0x000
p_next           : (null) <o:p></o:p></span></font></p>

<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:navy'>   +0x004
p_prev           : (null) <o:p></o:p></span></font></p>

<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:navy'>   +0x008
p_list           : 0x863416a0
_cl_qlist<o:p></o:p></span></font></p>

<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:navy'><o:p> </o:p></span></font></p>

</div>

</div>

</blockquote>

<div>

<p><font size=3 color="#1f497d" face="Times New Roman"><span style='font-size:
12.0pt;color:#1F497D'> </span></font><font size=5 color=green
face=Webdings><span style='font-size:18.0pt;font-family:Webdings;color:green'>P</span></font><font
size=5 color=green face="Courier New"><span style='font-size:18.0pt;font-family:
"Courier New";color:green'> </span></font><font size=2 color=blue
face=Arial><span style='font-size:10.0pt;font-family:Arial;color:blue'> </span></font><font
size=2 color=green face=Arial><span style='font-size:10.0pt;font-family:Arial;
color:green'>Please consider the environment before printing this e-mail or its
attachment(s)</span></font><font size=2 color=blue face=Arial><span
style='font-size:10.0pt;font-family:Arial;color:blue'> </span></font><font
color=navy><span style='color:navy'><o:p></o:p></span></font></p>

</div>

<div>

<p class=MsoNormal><font size=1 color="#999999" face=Verdana><span
style='font-size:8.5pt;font-family:Verdana;color:#999999'><br>
Disclaimer added by <b><span style='font-weight:bold'>CodeTwo Exchange Rules</span></b><br>
<a href="http://www.codetwo.com">www.codetwo.com</a><o:p></o:p></span></font></p>

</div>

<p class=MsoNormal><font size=3 face="Times New Roman"><span style='font-size:
12.0pt'><o:p> </o:p></span></font></p>

<!--418FEECD7B41410cA6AF47547865A7D9--></div>

</body>

</html>