<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>

<head>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=us-ascii">


<meta name=Generator content="Microsoft Word 10 (filtered)">
<title>Message</title>

<style>
<!--
 /* Font Definitions */
 @font-face
        {font-family:"MS Mincho";
        panose-1:2 2 6 9 4 2 5 8 3 4;}
@font-face
        {font-family:Tahoma;
        panose-1:2 11 6 4 3 5 4 4 2 4;}
@font-face
        {font-family:"\@MS Mincho";
        panose-1:2 2 6 9 4 2 5 8 3 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
        {margin-right:0in;
        margin-left:0in;
        font-size:12.0pt;
        font-family:"Times New Roman";}
span.EmailStyle18
        {font-family:Arial;
        color:navy;}
span.EmailStyle19
        {font-family:Arial;
        color:navy;}
span.EmailStyle20
        {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>

</head>

<body lang=EN-US link=blue vlink=purple>

<div class=Section1>

<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:navy'>First, everyone please go into Outlook,
from the Tools menu select Options, select the Mail Format tab, and choose
Plain Text as the default format.  HTML is a lousy format to quote with, so
people just give up and top-post.</span></font></p>

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

<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:navy'>Debug output is debug output – it is
there to help the developer.  In fact, WHQL tests check for references to
DbgPrint in release drivers, and any drivers with such references will fail
WHQL certification.  Enabling debug output in a release driver is not an
option.  Further, debug output is not easily displayed by a user – they either
need to setup a debugger or find third party tools to snoop the debug output. 
We cannot expect customers to have the know-how to do this.</span></font></p>

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

<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:navy'>This leaves us with a few options.  First
is to provide customers with the debug binaries as Tzachi suggested, and then
let the user setup the debugger. This has the same drawbacks as using debug
output, as it requires a certain level of expertise from the user.  Remember
that users in Windows are not necessarily (and in fact seldom) driver
developers.</span></font></p>

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

<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:navy'>Second is to log events to the event log,
allowing the user to control how much gets logged with a registry key.  </span></font></p>

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

<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:navy'>Lastly is to use the event tracing
mechanisms provided by the OS.  We should be able to instrument the code and
allow users to turn on the tracing, capture a trace, and send it back to their
vendor for analysis.  Tracing would be off by default, and controlled following
the event tracing methods.  Look at the section “WPP </span></font><font
 size=2 color=navy face=Arial><span style='font-size:10.0pt;font-family:Arial;
 color:navy'>Software</span></font><font size=2 color=navy face=Arial><span
style='font-size:10.0pt;font-family:Arial;color:navy'> Tracing” in the
DDK documentation.</span></font></p>

<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:navy'> </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 think we should use event logging (to
the system log) for major events, and tracing support for more detailed logs. 
Microsoft claims that WPP tracing has a negligible impact on runtime
performance when disabled.</span></font></p>

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

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

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

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

<p class=MsoNormal><font size=2 face=Tahoma><span style='font-size:10.0pt;
font-family:Tahoma'>-----Original Message-----<br>
<b><span style='font-weight:bold'>From:</span></b> Tzachi Dar
[mailto:tzachid@mellanox.co.il] <br>
<b><span style='font-weight:bold'>Sent:</span></b> </span></font><font size=2 face=Tahoma><span style='font-size:10.0pt;font-family:Tahoma'>Tuesday, August
 09, 2005</span></font><font size=2 face=Tahoma><span style='font-size:10.0pt;
font-family:Tahoma'> </span></font><font size=2 face=Tahoma><span
 style='font-size:10.0pt;font-family:Tahoma'>6:29 AM</span></font><font size=2
face=Tahoma><span style='font-size:10.0pt;font-family:Tahoma'><br>
<b><span style='font-weight:bold'>To:</span></b> Leonid Keller; Yossi
Leybovich; Tillier, Fabian<br>
<b><span style='font-weight:bold'>Cc:</span></b> 'openib-windows@openib.org'<br>
<b><span style='font-weight:bold'>Subject:</span></b> RE: [Openib-windows]
Debug prints in free version</span></font></p>

<p class=MsoNormal><font size=3 face="Times New Roman"><span style='font-size:
12.0pt'> </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 guess that we all agree that the debug
level should be "</span></font><font size=2 color=blue face=Arial><span
style='font-size:10.0pt;font-family:Arial;color:blue'>unprintable by default,
but to give some way to turn them on at run time". What I'm suggesting is
that this way will be to copy the debug versions of this files. Do you fill
that there is a need to make this simpler (for example instead of asking the
user to copy files we might ask him to make a change in the registry or so).</span></font></p>

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

<p class=MsoNormal><font size=2 color=blue face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:blue'>About Fab suggestion to print into the
event log. We have to choose carefully what we print into the debug log (for
example, errors on shutdown, might be printed using debug prints, but not to
the event log).</span></font></p>

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

<p class=MsoNormal><font size=2 color=blue face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:blue'>Thanks<br>
Tzachi</span></font></p>

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

<p class=MsoNormal style='margin-left:.5in'><font size=2 face=Tahoma><span
style='font-size:10.0pt;font-family:Tahoma'>-----Original Message-----<br>
<b><span style='font-weight:bold'>From:</span></b> Leonid Keller <br>
<b><span style='font-weight:bold'>Sent:</span></b> Tuesday, August 09, 2005
2:23 PM<br>
<b><span style='font-weight:bold'>To:</span></b> Yossi Leybovich; Tzachi Dar;
'Fab Tillier'<br>
<b><span style='font-weight:bold'>Cc:</span></b> 'openib-windows@openib.org'<br>
<b><span style='font-weight:bold'>Subject:</span></b> RE: [Openib-windows]
Debug prints in free version</span></font></p>

<p class=MsoNormal style='margin-left:.5in'><font size=3 face="Times New Roman"><span
style='font-size:12.0pt'> </span></font></p>

<div>

<p class=MsoNormal style='margin-left:.5in'><font size=2 color=blue face=Arial><span
style='font-size:10.0pt;font-family:Arial;color:blue'>i agree with Yossy.</span></font></p>

</div>

<div>

<p class=MsoNormal style='margin-left:.5in'><font size=2 color=blue face=Arial><span
style='font-size:10.0pt;font-family:Arial;color:blue'>To my mind, errors have
to be printed in release version also.</span></font></p>

</div>

<div>

<p class=MsoNormal style='margin-left:.5in'><font size=2 color=blue face=Arial><span
style='font-size:10.0pt;font-family:Arial;color:blue'>A compromise is to
make them unprintable by default, but to give some way to turn them on at run
time.</span></font></p>

</div>

<blockquote style='margin-top:5.0pt;margin-right:0in;margin-bottom:5.0pt'>

<p class=MsoNormal style='margin-right:0in;margin-bottom:12.0pt;margin-left:
.5in'><font size=2 face=Tahoma><span style='font-size:10.0pt;font-family:Tahoma'>-----Original
Message-----<br>
<b><span style='font-weight:bold'>From:</span></b> Yossi Leybovich
[mailto:sleybo@mellanox.co.il]<br>
<b><span style='font-weight:bold'>Sent:</span></b> Monday, August 08, 2005 3:42
PM<br>
<b><span style='font-weight:bold'>To:</span></b> Tzachi Dar; 'Fab Tillier'<br>
<b><span style='font-weight:bold'>Cc:</span></b> 'openib-windows@openib.org'<br>
<b><span style='font-weight:bold'>Subject:</span></b> RE: [Openib-windows]
Debug prints in free version</span></font></p>

<div>

<p class=MsoNormal style='margin-left:.5in'><font size=2 color=blue face=Arial><span
style='font-size:10.0pt;font-family:Arial;color:blue'>CB</span></font></p>

</div>

<blockquote style='margin-top:5.0pt;margin-right:0in;margin-bottom:5.0pt'>

<p class=MsoNormal style='margin-right:0in;margin-bottom:12.0pt;margin-left:
.5in'><font size=2 face=Tahoma><span style='font-size:10.0pt;font-family:Tahoma'>-----Original
Message-----<br>
<b><span style='font-weight:bold'>From:</span></b> Tzachi Dar <br>
<b><span style='font-weight:bold'>Sent:</span></b> Monday, August 08, 2005 3:15
PM<br>
<b><span style='font-weight:bold'>To:</span></b> Yossi Leybovich; Fab Tillier<br>
<b><span style='font-weight:bold'>Cc:</span></b> openib-windows@openib.org<br>
<b><span style='font-weight:bold'>Subject:</span></b> RE: [Openib-windows]
Debug prints in free version</span></font></p>

<p class=MsoNormal style='margin-left:.5in'><font size=2 color=navy face=Arial><span
style='font-size:10.0pt;font-family:Arial;color:navy'>Printing (even only in
the case of errors) will hurt performance for the following reasons:</span></font></p>

<p class=MsoNormal style='margin-left:.5in'><font size=2 color=navy face=Arial><span
style='font-size:10.0pt;font-family:Arial;color:navy'> </span></font></p>

<p class=MsoNormal style='margin-left:.5in'><font size=2 color=navy face=Arial><span
style='font-size:10.0pt;font-family:Arial;color:navy'>Today, these macros are
being removed out at compile time. If they are there in release, the check that
is made if to print or not will still be executed. </span></font></p>

<p class=MsoNormal style='margin-left:.5in'><font size=2 color=blue face=Arial><span
style='font-size:10.0pt;font-family:Arial;color:blue'>[YL] not if you use them
just in case of error (i.e if (status != IB_SUCCESS )
AL_TRACE(AL_DBG_ERROR......) and that the way most\all of the current code do</span></font></p>

<p class=MsoNormal style='margin-left:.5in'><font size=2 color=blue face=Arial><span
style='font-size:10.0pt;font-family:Arial;color:blue'>UI also think that this
theway VAPI\Gen2 behave.</span></font></p>

<p class=MsoNormal style='margin-left:.5in'><font size=2 color=navy face=Arial><span
style='font-size:10.0pt;font-family:Arial;color:navy'>Having these functions in
our code also means bigger foot print of our functions and therefore another
hit in performance (for example more cache misses).</span></font></p>

<p class=MsoNormal style='margin-left:.5in'><font size=2 color=blue face=Arial><span
style='font-size:10.0pt;font-family:Arial;color:blue'>[YL] That right but I
think that if you check it, it want heart the performance that much but you
help the user a lot to define his mistakes or give us log to debug our bugs</span></font></p>

<p class=MsoNormal style='margin-left:.5in'><font size=2 color=navy face=Arial><span
style='font-size:10.0pt;font-family:Arial;color:navy'>Please also note that
your idea is not enough since the IPOIB code is using the macro IPOIB_TRACE
which should also be changed to exist in free also. (There is a list of macros
that should be changed).</span></font></p>

<p class=MsoNormal style='margin-left:.5in'><font size=2 color=blue face=Arial><span
style='font-size:10.0pt;font-family:Arial;color:blue'>[YL] AFAIK all Macros map
to CL_PRINT so you just need to change in one place on all the ULPs behave the
same.</span></font></p>

<p class=MsoNormal style='margin-left:.5in'><font size=2 color=navy face=Arial><span
style='font-size:10.0pt;font-family:Arial;color:navy'>We might do a separate
build that is free but still has the prints, but debug messages should be
omitted from the binaries that we give to our customers.</span></font></p>

<p class=MsoNormal style='margin-left:.5in'><font size=2 color=blue face=Arial><span
style='font-size:10.0pt;font-family:Arial;color:blue'>[YL] I still think that
error massages should free version it want help the customer if will force him
to reinsatll another version of the driver.</span></font></p>

<p class=MsoNormal style='margin-left:.5in'><font size=2 color=navy face=Arial><span
style='font-size:10.0pt;font-family:Arial;color:navy'>Thanks</span></font></p>

<p class=MsoNormal style='margin-left:.5in'><font size=2 color=navy face=Arial><span
style='font-size:10.0pt;font-family:Arial;color:navy'>Tzachi</span></font></p>

<p class=MsoNormal style='margin-left:.5in'><font size=2 color=navy face=Arial><span
style='font-size:10.0pt;font-family:Arial;color:navy'> </span></font></p>

<p class=MsoNormal style='margin-left:1.0in'><font size=2 face=Tahoma><span
style='font-size:10.0pt;font-family:Tahoma'>-----Original Message-----<br>
<b><span style='font-weight:bold'>From:</span></b> Yossi Leybovich
[mailto:sleybo@mellanox.co.il] <br>
<b><span style='font-weight:bold'>Sent:</span></b> Monday, August 08, 2005 3:05
PM<br>
<b><span style='font-weight:bold'>To:</span></b> Fab Tillier<br>
<b><span style='font-weight:bold'>Cc:</span></b> openib-windows@openib.org<br>
<b><span style='font-weight:bold'>Subject:</span></b> [Openib-windows] Debug
prints in free version</span></font></p>

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

<p style='margin-left:1.0in'><font size=2 face=Arial><span style='font-size:
10.0pt;font-family:Arial'>Fab</span></font> </p>

<p style='margin-left:1.0in'><font size=2 face=Arial><span style='font-size:
10.0pt;font-family:Arial'>I think it will make it easy to all of us if the
stack will generate printf in case of error.</span></font> <br>
<font size=2 face=Arial><span style='font-size:10.0pt;font-family:Arial'>In the
current defines in order to debug any kernel level component you need to
replace the sys file to the debug version </span></font></p>

<p style='margin-left:1.0in'><font size=2 face=Arial><span style='font-size:
10.0pt;font-family:Arial'>It will be better if :</span></font> <br>
<font size=2 face=Arial><span style='font-size:10.0pt;font-family:Arial'>CL_PRINT
in case of ERROR_DBG should use cl_msg_out so it will generate print even in
free version</span></font> </p>

<p style='margin-left:1.0in'><font size=2 face=Arial><span style='font-size:
10.0pt;font-family:Arial'>It should not heart the data flow (we print just in
case of error)</span></font> </p>

<p style='margin-left:1.0in'><font size=2 face=Arial><span style='font-size:
10.0pt;font-family:Arial'>What do you think ?</span></font> </p>

<p style='margin-left:1.0in'><font size=2 face=Arial><span style='font-size:
10.0pt;font-family:Arial'>Yossi </span></font></p>

</blockquote>

</blockquote>

</div>

</div>

</body>

</html>