<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML xmlns:o = "urn:schemas-microsoft-com:office:office"><HEAD><TITLE>RE: [ofw] WDK build environment migration thoughts</TITLE>
<META http-equiv=Content-Type content="text/html; charset=us-ascii">
<META content="MSHTML 6.00.6000.16587" name=GENERATOR></HEAD>
<BODY>
<DIV><SPAN class=417341222-01052008><FONT face=Arial color=#0000ff
size=2>Applied in version 1109.</FONT></SPAN></DIV>
<DIV><SPAN class=417341222-01052008><FONT face=Arial color=#0000ff
size=2></FONT></SPAN> </DIV>
<DIV><SPAN class=417341222-01052008><FONT face=Arial color=#0000ff
size=2>Thanks</FONT></SPAN></DIV>
<DIV><SPAN class=417341222-01052008><FONT face=Arial color=#0000ff
size=2>Tzachi</FONT></SPAN></DIV><BR>
<BLOCKQUOTE dir=ltr
style="PADDING-LEFT: 5px; MARGIN-LEFT: 5px; BORDER-LEFT: #0000ff 2px solid; MARGIN-RIGHT: 0px">
<DIV class=OutlookMessageHeader lang=en-us dir=ltr align=left>
<HR tabIndex=-1>
<FONT face=Tahoma size=2><B>From:</B> ofw-bounces@lists.openfabrics.org
[mailto:ofw-bounces@lists.openfabrics.org] <B>On Behalf Of </B>Alex
Naslednikov<BR><B>Sent:</B> Thursday, May 01, 2008 7:48 PM<BR><B>To:</B> Alex
Estrin; Smith, Stan; Ishai Rabinovitz<BR><B>Cc:</B>
ofw@lists.openfabrics.org<BR><B>Subject:</B> RE: [ofw] WDK build environment
migration thoughts<BR></FONT><BR></DIV>
<DIV></DIV>
<DIV align=left><SPAN class=540164616-01052008><FONT face=Arial color=#0000ff
size=2>Fixed.</FONT></SPAN></DIV>
<DIV align=left><SPAN class=540164616-01052008><FONT face=Arial color=#0000ff
size=2></FONT></SPAN> </DIV><FONT size=2>
<P align=left>Index: core/bus/kernel/ib_bus.inf</P></FONT><FONT
face="Courier New (Hebrew)" size=2>
<P
align=left>===================================================================</P>
<P align=left>--- </FONT><FONT size=2>core/bus/kernel/ib_bus.inf</FONT><FONT
face="Courier New (Hebrew)" size=2> (</FONT><FONT size=2>revision
1106</FONT><FONT face="Courier New (Hebrew)" size=2>)</P>
<P align=left>+++ </FONT><FONT size=2>core/bus/kernel/ib_bus.inf</FONT><FONT
face="Courier New (Hebrew)" size=2> (</FONT><FONT size=2>working
copy</FONT><FONT face="Courier New (Hebrew)" size=2>)</P>
<P align=left>@@ -6,8 +6,8 @@</P>
<P align=left></FONT><FONT size=2>Signature="$Windows NT</FONT><FONT
face="Courier New (Hebrew)" size=2>$"</P>
<P align=left></FONT><FONT size=2>Class=System</P></FONT><FONT
face="Courier New (Hebrew)" size=2>
<P align=left></FONT><FONT
size=2>ClassGuid={4D36E97D-E325-11CE-BFC1-08002BE10318</FONT><FONT
face="Courier New (Hebrew)" size=2>}</P>
<P align=left>-</FONT><FONT size=2>Provider=%MTL</FONT><FONT
face="Courier New (Hebrew)" size=2>%</P>
<P align=left>-</FONT><FONT
size=2>DriverVer=08/12/2007,1.4.0.2041</P></FONT><FONT
face="Courier New (Hebrew)" size=2>
<P align=left>+</FONT><FONT size=2>Provider=%OPENIB</FONT><FONT
face="Courier New (Hebrew)" size=2>%</P>
<P align=left>+</FONT><FONT
size=2>DriverVer=03/08/2006,1.0.0000.614</P></FONT><FONT
face="Courier New (Hebrew)" size=2>
<P align=left></FONT><FONT size=2>CatalogFile=ib_bus.cat</P></FONT><FONT
face="Courier New (Hebrew)" size=2>
<P align=left></P>
<P align=left>; ================= </FONT><FONT size=2>Device Install
section</FONT><FONT face="Courier New (Hebrew)" size=2>
=====================</P>
<P align=left>@@ -61,7 +61,6 @@</P>
<P align=left></P>
<P align=left>[</FONT><FONT size=2>Manufacturer</FONT><FONT
face="Courier New (Hebrew)" size=2>]</P>
<P align=left>%</FONT><FONT size=2>OPENIB% =
Ibbus.DeviceSection,ntx86,ntamd64,ntia64</P></FONT><FONT
face="Courier New (Hebrew)" size=2>
<P align=left>-%</FONT><FONT size=2>MTL% =
Ibbus.DeviceSection,ntx86,ntamd64,ntia64</P></FONT><FONT
face="Courier New (Hebrew)" size=2>
<P align=left>%</FONT><FONT size=2>SST% =
SST.DeviceSection,ntx86,ntamd64,ntia64</P></FONT><FONT
face="Courier New (Hebrew)" size=2>
<P align=left></P>
<P align=left>[</FONT><FONT size=2>Ibbus.DeviceSection</FONT><FONT
face="Courier New (Hebrew)" size=2>]</P>
<P align=left>@@ -87,18 +86,24 @@</P>
<P align=left>%</FONT><FONT size=2>VEx.DeviceDesc% =
Iou.DDInstall,IBA\V00066aP0058</P></FONT><FONT face="Courier New (Hebrew)"
size=2>
<P align=left>%</FONT><FONT size=2>FVIC.DeviceDesc% =
Iou.DDInstall,IBA\V00066aP00dd</P></FONT><FONT face="Courier New (Hebrew)"
size=2>
<P align=left>%</FONT><FONT size=2>EVIC.DeviceDesc% =
Iou.DDInstall,IBA\V00066aP00de</P></FONT><FONT face="Courier New (Hebrew)"
size=2>
<P align=left>+%</FONT><FONT size=2>BC2FC.DeviceDesc% =
Iou.DDInstall,IBA\V00066aP00e0</P></FONT><FONT face="Courier New (Hebrew)"
size=2>
<P align=left>+%</FONT><FONT size=2>BC2GE.DeviceDesc% =
Iou.DDInstall,IBA\V00066aP00e1</P></FONT><FONT face="Courier New (Hebrew)"
size=2>
<P align=left></P>
<P align=left>[</FONT><FONT size=2>SST.DeviceSection.ntamd64</FONT><FONT
face="Courier New (Hebrew)" size=2>]</P>
<P align=left>%</FONT><FONT size=2>VFx.DeviceDesc% =
Iou.DDInstall,IBA\V00066aP0060,IBA\V00066aP0010</P></FONT><FONT
face="Courier New (Hebrew)" size=2>
<P align=left>%</FONT><FONT size=2>VEx.DeviceDesc% =
Iou.DDInstall,IBA\V00066aP0058</P></FONT><FONT face="Courier New (Hebrew)"
size=2>
<P align=left>%</FONT><FONT size=2>FVIC.DeviceDesc% =
Iou.DDInstall,IBA\V00066aP00dd</P></FONT><FONT face="Courier New (Hebrew)"
size=2>
<P align=left>%</FONT><FONT size=2>EVIC.DeviceDesc% =
Iou.DDInstall,IBA\V00066aP00de</P></FONT><FONT face="Courier New (Hebrew)"
size=2>
<P align=left>+%</FONT><FONT size=2>BC2FC.DeviceDesc% =
Iou.DDInstall,IBA\V00066aP00e0</P></FONT><FONT face="Courier New (Hebrew)"
size=2>
<P align=left>+%</FONT><FONT size=2>BC2GE.DeviceDesc% =
Iou.DDInstall,IBA\V00066aP00e1</P></FONT><FONT face="Courier New (Hebrew)"
size=2>
<P align=left></P>
<P align=left>[</FONT><FONT size=2>SST.DeviceSection.ntia64</FONT><FONT
face="Courier New (Hebrew)" size=2>]</P>
<P align=left>%</FONT><FONT size=2>VFx.DeviceDesc% =
Iou.DDInstall,IBA\V00066aP0060,IBA\V00066aP0010</P></FONT><FONT
face="Courier New (Hebrew)" size=2>
<P align=left>%</FONT><FONT size=2>VEx.DeviceDesc% =
Iou.DDInstall,IBA\V00066aP0058</P></FONT><FONT face="Courier New (Hebrew)"
size=2>
<P align=left>%</FONT><FONT size=2>FVIC.DeviceDesc% =
Iou.DDInstall,IBA\V00066aP00dd</P></FONT><FONT face="Courier New (Hebrew)"
size=2>
<P align=left>%</FONT><FONT size=2>EVIC.DeviceDesc% =
Iou.DDInstall,IBA\V00066aP00de</P></FONT><FONT face="Courier New (Hebrew)"
size=2>
<P align=left>+%</FONT><FONT size=2>BC2FC.DeviceDesc% =
Iou.DDInstall,IBA\V00066aP00e0</P></FONT><FONT face="Courier New (Hebrew)"
size=2>
<P align=left>+%</FONT><FONT size=2>BC2GE.DeviceDesc% =
Iou.DDInstall,IBA\V00066aP00e1</P></FONT><FONT face="Courier New (Hebrew)"
size=2>
<P align=left></P>
<P align=left>[</FONT><FONT size=2>Ibbus.DDInstall.ntx86</FONT><FONT
face="Courier New (Hebrew)" size=2>]</P>
<P align=left></FONT><FONT size=2>CopyFiles = Ibbus.CopyFiles</P></FONT><FONT
face="Courier New (Hebrew)" size=2>
<P align=left>@@ -185,18 +190,20 @@</P>
<P align=left></P>
<P align=left>[</FONT><FONT size=2>Strings</FONT><FONT
face="Courier New (Hebrew)" size=2>]</P>
<P align=left></FONT><FONT size=2>OPENIB = "OpenIB Alliance</FONT><FONT
face="Courier New (Hebrew)" size=2>"</P>
<P align=left>-</FONT><FONT size=2>MTL = "Mellanox Technologies
Ltd</FONT><FONT face="Courier New (Hebrew)" size=2>."</P>
<P align=left></FONT><FONT size=2>SST = "SilverStorm Technologies</FONT><FONT
face="Courier New (Hebrew)" size=2>"</P>
<P align=left>-</FONT><FONT size=2>Ibbus.DeviceDesc = "Mellanox InfiniBand
Fabric</FONT><FONT face="Courier New (Hebrew)" size=2>"</P>
<P align=left>+</FONT><FONT size=2>Ibbus.DeviceDesc = "InfiniBand
Fabric</FONT><FONT face="Courier New (Hebrew)" size=2>"</P>
<P align=left></FONT><FONT size=2>VFx.DeviceDesc = "SilverStorm
VFx</FONT><FONT face="Courier New (Hebrew)" size=2>"</P>
<P align=left></FONT><FONT size=2>VEx.DeviceDesc = "SilverStorm
VEx</FONT><FONT face="Courier New (Hebrew)" size=2>"</P>
<P align=left></FONT><FONT size=2>FVIC.DeviceDesc = "SilverStorm
FVIC</FONT><FONT face="Courier New (Hebrew)" size=2>"</P>
<P align=left></FONT><FONT size=2>EVIC.DeviceDesc = "SilverStorm
EVIC</FONT><FONT face="Courier New (Hebrew)" size=2>"</P>
<P align=left>-</FONT><FONT size=2>Iou.DeviceDesc = "Mellanox InfiniBand I/O
Unit</FONT><FONT face="Courier New (Hebrew)" size=2>"</P>
<P align=left>-</FONT><FONT size=2>Ibbus.ServiceDesc = "InfiniBand Bus
Driver</FONT><FONT face="Courier New (Hebrew)" size=2>"</P>
<P align=left>-</FONT><FONT size=2>Ibal.ServiceDesc = "InfiniBand Access
Layer</FONT><FONT face="Courier New (Hebrew)" size=2>"</P>
<P align=left>-</FONT><FONT size=2>Iou.ServiceDesc = "InfiniBand I/O Unit
Driver</FONT><FONT face="Courier New (Hebrew)" size=2>"</P>
<P align=left>-</FONT><FONT size=2>DiskId = "Mellanox InfiniBand Access Layer
installation disk</FONT><FONT face="Courier New (Hebrew)" size=2>"</P>
<P align=left>+</FONT><FONT size=2>BC2FC.DeviceDesc = "QLogic InfiniBand Fibre
Channel Bridge Module</FONT><FONT face="Courier New (Hebrew)" size=2>"</P>
<P align=left>+</FONT><FONT size=2>BC2GE.DeviceDesc = "QLogic InfiniBand
Ethernet Bridge Module</FONT><FONT face="Courier New (Hebrew)" size=2>"</P>
<P align=left>+</P>
<P align=left>+</FONT><FONT size=2>Iou.DeviceDesc = "InfiniBand I/O
Unit</FONT><FONT face="Courier New (Hebrew)" size=2>"</P>
<P align=left>+</FONT><FONT size=2>Ibbus.ServiceDesc = "OpenIB InfiniBand Bus
Driver</FONT><FONT face="Courier New (Hebrew)" size=2>"</P>
<P align=left>+</FONT><FONT size=2>Ibal.ServiceDesc = "OpenIB InfiniBand
Access Layer</FONT><FONT face="Courier New (Hebrew)" size=2>"</P>
<P align=left>+</FONT><FONT size=2>Iou.ServiceDesc = "OpenIB InfiniBand I/O
Unit Driver</FONT><FONT face="Courier New (Hebrew)" size=2>"</P>
<P align=left>+</FONT><FONT size=2>DiskId = "OpenIB InfiniBand Access Layer
installation disk</FONT><FONT face="Courier New (Hebrew)" size=2>"</P>
<P align=left></FONT><FONT size=2>SPSVCINST_NULL = 0x0</P></FONT><FONT
face="Courier New (Hebrew)" size=2>
<P align=left></FONT><FONT size=2>SPSVCINST_ASSOCSERVICE =
0x00000002</P></FONT><FONT face="Courier New (Hebrew)" size=2>
<P align=left></FONT><FONT size=2>SERVICE_KERNEL_DRIVER = 1</P>
<P align=left>Index: hw/mthca/kernel/mthca.inf</P></FONT><FONT
face="Courier New (Hebrew)" size=2>
<P
align=left>===================================================================</P>
<P align=left>--- </FONT><FONT size=2>hw/mthca/kernel/mthca.inf</FONT><FONT
face="Courier New (Hebrew)" size=2> (</FONT><FONT size=2>revision
1091</FONT><FONT face="Courier New (Hebrew)" size=2>)</P>
<P align=left>+++ </FONT><FONT size=2>hw/mthca/kernel/mthca.inf</FONT><FONT
face="Courier New (Hebrew)" size=2> (</FONT><FONT size=2>working
copy</FONT><FONT face="Courier New (Hebrew)" size=2>)</P>
<P align=left>@@ -5,9 +5,9 @@</P>
<P align=left></FONT><FONT size=2>Signature="$Windows NT</FONT><FONT
face="Courier New (Hebrew)" size=2>$"</P>
<P align=left></FONT><FONT size=2>Class=InfiniBandHca</P></FONT><FONT
face="Courier New (Hebrew)" size=2>
<P align=left></FONT><FONT
size=2>ClassGUID={58517E00-D3CF-40c9-A679-CEE5752F4491</FONT><FONT
face="Courier New (Hebrew)" size=2>}</P>
<P align=left>-</FONT><FONT size=2>Provider=%MTL</FONT><FONT
face="Courier New (Hebrew)" size=2>%</P>
<P align=left>+</FONT><FONT size=2>Provider=%OPENIB</FONT><FONT
face="Courier New (Hebrew)" size=2>%</P>
<P align=left>; </FONT><FONT size=2>must be synchronized with
MTHCA_DEV.H</P></FONT><FONT face="Courier New (Hebrew)" size=2>
<P align=left>-</FONT><FONT
size=2>DriverVer=08/12/2007,1.4.0.2041</P></FONT><FONT
face="Courier New (Hebrew)" size=2>
<P align=left>+</FONT><FONT
size=2>DriverVer=03/08/2006,1.0.0000.614</P></FONT><FONT
face="Courier New (Hebrew)" size=2>
<P align=left></FONT><FONT size=2>CatalogFile=mthca.cat</P></FONT><FONT
face="Courier New (Hebrew)" size=2>
<P align=left></P>
<P align=left>; ================= </FONT><FONT size=2>Destination directory
section</FONT><FONT face="Courier New (Hebrew)" size=2>
=====================</P></FONT><FONT size=2>
<P align=left>Index: tests/alts/kernel/alts.inf</P></FONT><FONT
face="Courier New (Hebrew)" size=2>
<P
align=left>===================================================================</P>
<P align=left>--- </FONT><FONT size=2>tests/alts/kernel/alts.inf</FONT><FONT
face="Courier New (Hebrew)" size=2> (</FONT><FONT size=2>revision
1106</FONT><FONT face="Courier New (Hebrew)" size=2>)</P>
<P align=left>+++ </FONT><FONT size=2>tests/alts/kernel/alts.inf</FONT><FONT
face="Courier New (Hebrew)" size=2> (</FONT><FONT size=2>working
copy</FONT><FONT face="Courier New (Hebrew)" size=2>)</P>
<P align=left>@@ -26,7 +26,7 @@</P>
<P align=left></FONT><FONT size=2>ClassGUID=%HcaClassGuid</FONT><FONT
face="Courier New (Hebrew)" size=2>%</P>
<P align=left></FONT><FONT size=2>Provider=%Vendor</FONT><FONT
face="Courier New (Hebrew)" size=2>%</P>
<P align=left></FONT><FONT size=2>CatalogFile=infiniserv.cat</P></FONT><FONT
face="Courier New (Hebrew)" size=2>
<P align=left>-</FONT><FONT
size=2>DriverVer=12/21/2006,1.0.0000.566</P></FONT><FONT
face="Courier New (Hebrew)" size=2>
<P align=left>+</FONT><FONT
size=2>DriverVer=03/08/2006,1.0.0000.614</P></FONT><FONT
face="Courier New (Hebrew)" size=2>
<P align=left></P>
<P align=left>; ================= </FONT><FONT size=2>Destination directory
section</FONT><FONT face="Courier New (Hebrew)" size=2>
=====================</P>
<P align=left></P></FONT><FONT size=2>
<P align=left>Index: ulp/ipoib/kernel/netipoib.inf</P></FONT><FONT
face="Courier New (Hebrew)" size=2>
<P
align=left>===================================================================</P>
<P align=left>--- </FONT><FONT
size=2>ulp/ipoib/kernel/netipoib.inf</FONT><FONT face="Courier New (Hebrew)"
size=2> (</FONT><FONT size=2>revision 1106</FONT><FONT
face="Courier New (Hebrew)" size=2>)</P>
<P align=left>+++ </FONT><FONT
size=2>ulp/ipoib/kernel/netipoib.inf</FONT><FONT face="Courier New (Hebrew)"
size=2> (</FONT><FONT size=2>working copy</FONT><FONT
face="Courier New (Hebrew)" size=2>)</P>
<P align=left>@@ -6,26 +6,26 @@</P>
<P align=left></FONT><FONT size=2>Signature = "$Windows NT</FONT><FONT
face="Courier New (Hebrew)" size=2>$"</P>
<P align=left></FONT><FONT size=2>Class = Net</P></FONT><FONT
face="Courier New (Hebrew)" size=2>
<P align=left></FONT><FONT size=2>ClassGUID =
{4d36e972-e325-11ce-bfc1-08002be10318</FONT><FONT face="Courier New (Hebrew)"
size=2>}</P>
<P align=left>-</FONT><FONT size=2>Provider = %MTL</FONT><FONT
face="Courier New (Hebrew)" size=2>%</P>
<P align=left>-</FONT><FONT
size=2>DriverVer=08/12/2007,1.4.0.2041</P></FONT><FONT
face="Courier New (Hebrew)" size=2>
<P align=left>+</FONT><FONT size=2>Provider = %OPENIB</FONT><FONT
face="Courier New (Hebrew)" size=2>%</P>
<P align=left>+</FONT><FONT
size=2>DriverVer=03/08/2006,1.0.0000.614</P></FONT><FONT
face="Courier New (Hebrew)" size=2>
<P align=left></FONT><FONT size=2>CatalogFile=ipoib.cat</P></FONT><FONT
face="Courier New (Hebrew)" size=2>
<P align=left></P>
<P align=left>[</FONT><FONT size=2>Manufacturer</FONT><FONT
face="Courier New (Hebrew)" size=2>]</P>
<P align=left>-%</FONT><FONT size=2>MTL% =
MTL,ntx86,ntamd64,ntia64</P></FONT><FONT face="Courier New (Hebrew)" size=2>
<P align=left>+%</FONT><FONT size=2>OPENIB% =
OPENIB,ntx86,ntamd64,ntia64</P></FONT><FONT face="Courier New (Hebrew)"
size=2>
<P align=left></P>
<P align=left>[</FONT><FONT size=2>ControlFlags</FONT><FONT
face="Courier New (Hebrew)" size=2>]</P>
<P align=left></FONT><FONT size=2>ExcludeFromSelect =
IBA\IPoIB</P></FONT><FONT face="Courier New (Hebrew)" size=2>
<P align=left></P>
<P align=left>-[</FONT><FONT size=2>MTL</FONT><FONT
face="Courier New (Hebrew)" size=2>]</P>
<P align=left>+[</FONT><FONT size=2>OPENIB</FONT><FONT
face="Courier New (Hebrew)" size=2>]</P>
<P align=left>; </FONT><FONT size=2>empty since we don't support
W9x/Me</P></FONT><FONT face="Courier New (Hebrew)" size=2>
<P align=left></P>
<P align=left>-[</FONT><FONT size=2>MTL.ntx86</FONT><FONT
face="Courier New (Hebrew)" size=2>]</P>
<P align=left>+[</FONT><FONT size=2>OPENIB.ntx86</FONT><FONT
face="Courier New (Hebrew)" size=2>]</P>
<P align=left>%</FONT><FONT size=2>IpoibDesc% = Ipoib.DDInstall, IBA\IPoIB ;
Internet Protocol over InfiniBand Adapter</P></FONT><FONT
face="Courier New (Hebrew)" size=2>
<P align=left></P>
<P align=left>-[</FONT><FONT size=2>MTL.ntamd64</FONT><FONT
face="Courier New (Hebrew)" size=2>]</P>
<P align=left>+[</FONT><FONT size=2>OPENIB.ntamd64</FONT><FONT
face="Courier New (Hebrew)" size=2>]</P>
<P align=left>%</FONT><FONT size=2>IpoibDesc% = Ipoib.DDInstall, IBA\IPoIB ;
Internet Protocol over InfiniBand Adapter</P></FONT><FONT
face="Courier New (Hebrew)" size=2>
<P align=left></P>
<P align=left>-[</FONT><FONT size=2>MTL.ntia64</FONT><FONT
face="Courier New (Hebrew)" size=2>]</P>
<P align=left>+[</FONT><FONT size=2>OPENIB.ntia64</FONT><FONT
face="Courier New (Hebrew)" size=2>]</P>
<P align=left>%</FONT><FONT size=2>IpoibDesc% = Ipoib.DDInstall, IBA\IPoIB ;
Internet Protocol over InfiniBand Adapter</P></FONT><FONT
face="Courier New (Hebrew)" size=2>
<P align=left></P>
<P align=left>[</FONT><FONT size=2>Ipoib.DDInstall.ntx86</FONT><FONT
face="Courier New (Hebrew)" size=2>]</P>
<P align=left>@@ -188,10 +188,9 @@</P>
<P align=left></P>
<P align=left>[</FONT><FONT size=2>Strings</FONT><FONT
face="Courier New (Hebrew)" size=2>]</P>
<P align=left></FONT><FONT size=2>OPENIB = "OpenIB Alliance</FONT><FONT
face="Courier New (Hebrew)" size=2>"</P>
<P align=left>-</FONT><FONT size=2>MTL </FONT><FONT
face="Courier New (Hebrew)" size=2></FONT><FONT size=2>= "Mellanox
Technologies Ltd</FONT><FONT face="Courier New (Hebrew)" size=2>."</P>
<P align=left>-</FONT><FONT size=2>IpoibDesc = "Mellanox IPoIB
Adapter</FONT><FONT face="Courier New (Hebrew)" size=2>"</P>
<P align=left>+</FONT><FONT size=2>IpoibDesc = "OpenIB IPoIB
Adapter</FONT><FONT face="Courier New (Hebrew)" size=2>"</P>
<P align=left></FONT><FONT size=2>IpoibServiceDispName = "IPoIB</FONT><FONT
face="Courier New (Hebrew)" size=2>"</P>
<P align=left>-</FONT><FONT size=2>IcsDisk1 = "Mellanox IPoIB Disk
#1</FONT><FONT face="Courier New (Hebrew)" size=2>"</P>
<P align=left>+</FONT><FONT size=2>IcsDisk1 = "OpenIB IPoIB Disk
#1</FONT><FONT face="Courier New (Hebrew)" size=2>"</P>
<P align=left></FONT><FONT size=2>DIRID_SYSTEM = 11</P></FONT><FONT
face="Courier New (Hebrew)" size=2>
<P align=left></FONT><FONT size=2>DIRID_DRIVERS = 12</P></FONT><FONT
face="Courier New (Hebrew)" size=2>
<P align=left></FONT><FONT size=2>DIRID_SYSTEM_X86 = 16425</P>
<P align=left>Index: ulp/srp/kernel/ib_srp.inf</P></FONT><FONT
face="Courier New (Hebrew)" size=2>
<P
align=left>===================================================================</P>
<P align=left>--- </FONT><FONT size=2>ulp/srp/kernel/ib_srp.inf</FONT><FONT
face="Courier New (Hebrew)" size=2> (</FONT><FONT size=2>revision
1103</FONT><FONT face="Courier New (Hebrew)" size=2>)</P>
<P align=left>+++ </FONT><FONT size=2>ulp/srp/kernel/ib_srp.inf</FONT><FONT
face="Courier New (Hebrew)" size=2> (</FONT><FONT size=2>working
copy</FONT><FONT face="Courier New (Hebrew)" size=2>)</P>
<P align=left>@@ -5,10 +5,10 @@</P>
<P align=left></FONT><FONT size=2>Signature="$Windows NT</FONT><FONT
face="Courier New (Hebrew)" size=2>$"</P>
<P align=left></FONT><FONT size=2>Class=SCSIAdapter</P></FONT><FONT
face="Courier New (Hebrew)" size=2>
<P align=left></FONT><FONT
size=2>ClassGUID={4D36E97B-E325-11CE-BFC1-08002BE10318</FONT><FONT
face="Courier New (Hebrew)" size=2>}</P>
<P align=left>-</FONT><FONT size=2>Provider=%MTL</FONT><FONT
face="Courier New (Hebrew)" size=2>%</P>
<P align=left>-</FONT><FONT
size=2>DriverVer=12/21/2006,1.0.0000.566</P></FONT><FONT
face="Courier New (Hebrew)" size=2>
<P align=left>-;</FONT><FONT size=2>CatalogFile=ib_srp.cat</P></FONT><FONT
face="Courier New (Hebrew)" size=2>
<P align=left>+</FONT><FONT size=2>Provider=%OPENIB</FONT><FONT
face="Courier New (Hebrew)" size=2>%</P>
<P align=left>+</FONT><FONT
size=2>DriverVer=03/08/2006,1.0.0000.614</P></FONT><FONT
face="Courier New (Hebrew)" size=2>
<P align=left></P>
<P align=left>+</P>
<P align=left>; ================= </FONT><FONT size=2>Device Install
section</FONT><FONT face="Courier New (Hebrew)" size=2>
=====================</P>
<P align=left></P>
<P align=left>[</FONT><FONT size=2>DestinationDirs</FONT><FONT
face="Courier New (Hebrew)" size=2>]</P>
<P align=left>@@ -28,7 +28,6 @@</P>
<P align=left></P>
<P align=left>[</FONT><FONT size=2>Manufacturer</FONT><FONT
face="Courier New (Hebrew)" size=2>]</P>
<P align=left>%</FONT><FONT size=2>OPENIB% =
SRP.DeviceSection,ntx86...0x1,ntx86,ntamd64,ntia64</P></FONT><FONT
face="Courier New (Hebrew)" size=2>
<P align=left>-%</FONT><FONT size=2>MTL% =
SRP.DeviceSection,ntx86...0x1,ntx86,ntamd64,ntia64</P></FONT><FONT
face="Courier New (Hebrew)" size=2>
<P align=left>%</FONT><FONT size=2>SST% =
VFx.DeviceSection,ntx86...0x1,ntx86,ntamd64,ntia64</P></FONT><FONT
face="Courier New (Hebrew)" size=2>
<P align=left></P>
<P align=left>[</FONT><FONT size=2>SRP.DeviceSection</FONT><FONT
face="Courier New (Hebrew)" size=2>]</P>
<P align=left>@@ -120,12 +119,11 @@</P>
<P align=left></P>
<P align=left>[</FONT><FONT size=2>Strings</FONT><FONT
face="Courier New (Hebrew)" size=2>]</P>
<P align=left></FONT><FONT size=2>OPENIB = "OpenIB Alliance</FONT><FONT
face="Courier New (Hebrew)" size=2>"</P>
<P align=left>-</FONT><FONT size=2>MTL = "Mellanox Technologies
Ltd</FONT><FONT face="Courier New (Hebrew)" size=2>."</P>
<P align=left></FONT><FONT size=2>SST = "SilverStorm Technologies</FONT><FONT
face="Courier New (Hebrew)" size=2>"</P>
<P align=left>-</FONT><FONT size=2>SRP.DeviceDesc = "Mellanox InfiniBand SRP
Miniport</FONT><FONT face="Courier New (Hebrew)" size=2>"</P>
<P align=left>+</FONT><FONT size=2>SRP.DeviceDesc = "InfiniBand SRP
Miniport</FONT><FONT face="Courier New (Hebrew)" size=2>"</P>
<P align=left></FONT><FONT size=2>VFx.DeviceDesc = "SilverStorm VFx I/O
Controller</FONT><FONT face="Courier New (Hebrew)" size=2>"</P>
<P align=left>-</FONT><FONT size=2>SRP.ServiceDesc = "InfiniBand SRP
Miniport</FONT><FONT face="Courier New (Hebrew)" size=2>"</P>
<P align=left>-</FONT><FONT size=2>DiskId = "Mellanox InfiniBand SRP
installation disk</FONT><FONT face="Courier New (Hebrew)" size=2>"</P>
<P align=left>+</FONT><FONT size=2>SRP.ServiceDesc = "OpenIB InfiniBand SRP
Miniport</FONT><FONT face="Courier New (Hebrew)" size=2>"</P>
<P align=left>+</FONT><FONT size=2>DiskId = "OpenIB InfiniBand SRP
installation disk</FONT><FONT face="Courier New (Hebrew)" size=2>"</P>
<P align=left></FONT><FONT size=2>InternalBus = 0</P></FONT><FONT
face="Courier New (Hebrew)" size=2>
<P align=left></FONT><FONT size=2>PNPBus = 15</P></FONT><FONT
face="Courier New (Hebrew)" size=2>
<P align=left></FONT><FONT size=2>SPSVCINST_NULL = 0x0</P></FONT><FONT
face="Courier New (Hebrew)" size=2>
<P align=left></P></FONT>
<DIV align=left><BR> </DIV>
<DIV class=OutlookMessageHeader lang=en-us dir=ltr align=left>
<HR tabIndex=-1>
</DIV>
<DIV class=OutlookMessageHeader lang=en-us dir=ltr align=left><FONT
face=Tahoma size=2><B>From:</B> Alex Estrin [mailto:alex.estrin@qlogic.com]
<BR><B>Sent:</B> Thursday, May 01, 2008 3:08 PM<BR><B>To:</B> Alex
Naslednikov; Smith, Stan; Ishai Rabinovitz<BR><B>Cc:</B>
ofw@lists.openfabrics.org<BR><B>Subject:</B> RE: [ofw] WDK build environment
migration thoughts<BR></FONT><BR></DIV>
<DIV align=left></DIV>
<DIV dir=ltr align=left><SPAN
style="FONT-SIZE: 11pt; COLOR: #1f497d; FONT-FAMILY: 'Calibri','sans-serif'"><o:p><SPAN
class=905453612-01052008><FONT color=#0000ff size=2>I've noticed unnecessary
changes in ib_bus.inf:</FONT></SPAN></o:p></SPAN></DIV>
<DIV dir=ltr align=left><SPAN
style="FONT-SIZE: 11pt; COLOR: #1f497d; FONT-FAMILY: 'Calibri','sans-serif'"><o:p><SPAN
class=905453612-01052008><FONT color=#0000ff
size=2> </FONT></SPAN></o:p></SPAN><SPAN
style="FONT-SIZE: 11pt; COLOR: #1f497d; FONT-FAMILY: 'Calibri','sans-serif'"><o:p><SPAN
class=905453612-01052008><FONT color=#0000ff size=2>branding changed from
OpenIB Alliance to Mellanox.</FONT></SPAN></o:p></SPAN></DIV>
<DIV dir=ltr align=left><SPAN
style="FONT-SIZE: 11pt; COLOR: #1f497d; FONT-FAMILY: 'Calibri','sans-serif'"><o:p><SPAN
class=905453612-01052008></SPAN><SPAN class=905453612-01052008><FONT
color=#0000ff size=2> removed hardware IDs and device
descriptors for QLogic Fibre Channel and Ethernet bridge
modules.</FONT></SPAN></o:p></SPAN></DIV>
<DIV dir=ltr align=left><SPAN
style="FONT-SIZE: 11pt; COLOR: #1f497d; FONT-FAMILY: 'Calibri','sans-serif'"><o:p><SPAN
class=905453612-01052008><FONT color=#0000ff size=2>Rebranding is
also noticed in ib_srp.inf,
netipoib.inf</FONT></SPAN></o:p></SPAN></DIV>
<DIV dir=ltr align=left><SPAN
style="FONT-SIZE: 11pt; COLOR: #1f497d; FONT-FAMILY: 'Calibri','sans-serif'"><o:p><SPAN
class=905453612-01052008><FONT color=#0000ff
size=2></FONT></SPAN></o:p></SPAN> </DIV>
<DIV dir=ltr align=left><SPAN
style="FONT-SIZE: 11pt; COLOR: #1f497d; FONT-FAMILY: 'Calibri','sans-serif'"><o:p><SPAN
class=905453612-01052008><FONT color=#0000ff
size=2>Thanks,</FONT></SPAN></o:p></SPAN></DIV>
<DIV dir=ltr align=left><SPAN
style="FONT-SIZE: 11pt; COLOR: #1f497d; FONT-FAMILY: 'Calibri','sans-serif'"><o:p><SPAN
class=905453612-01052008><FONT color=#0000ff
size=2>Alex.</FONT></SPAN></o:p></SPAN></DIV>
<DIV align=left><BR> </DIV>
<BLOCKQUOTE dir=ltr
style="PADDING-LEFT: 5px; MARGIN-LEFT: 5px; BORDER-LEFT: #0000ff 2px solid; MARGIN-RIGHT: 0px">
<DIV class=OutlookMessageHeader lang=en-us dir=ltr align=left>
<HR tabIndex=-1>
<FONT face=Tahoma size=2><B>From:</B> ofw-bounces@lists.openfabrics.org
[mailto:ofw-bounces@lists.openfabrics.org] <B>On Behalf Of </B>Alex
Naslednikov<BR><B>Sent:</B> Wednesday, April 30, 2008 4:20 AM<BR><B>To:</B>
Alex Naslednikov; Smith, Stan; Ishai Rabinovitz<BR><B>Cc:</B>
ofw@lists.openfabrics.org<BR><B>Subject:</B> RE: [ofw] WDK build environment
migration thoughts<BR></FONT><BR></DIV>
<DIV align=left></DIV><!-- Converted from text/rtf format -->
<P dir=ltr align=left><SPAN lang=en-us><FONT face=Arial color=#0000ff
size=2>Hello,</FONT></SPAN></P>
<P dir=ltr align=left><SPAN lang=en-us><FONT face=Arial color=#0000ff
size=2>I committed our WDK and __ptr64 patch into WinOF trunk, and WinOF and
WinIB trunks were synchronized again.</FONT></SPAN></P>
<P dir=ltr align=left><SPAN lang=en-us><FONT face=Arial color=#0000ff
size=2>You can find below some further explanations :</FONT></SPAN></P>
<P dir=ltr align=left><SPAN lang=en-us><FONT face=Arial color=#0000ff
size=2>1. IBAL compiles now with WDK6001.18001. According to Microsoft, it
should be the last and official release.</FONT></SPAN></P>
<P dir=ltr align=left><SPAN lang=en-us><FONT face=Arial color=#0000ff
size=2>We preserved the backward compatibility with DDK, but some
intermediate versions of WDK may be incompatible</FONT></SPAN></P>
<P dir=ltr align=left><SPAN lang=en-us><FONT face=Arial color=#0000ff
size=2>2. Please, be aware that one has to change WinOF modules that aren't
in WinIB stack (like additional ulps : udapl, vnic etc.) according to new
methodology</FONT></SPAN></P>
<P dir=ltr align=left><SPAN lang=en-us><FONT face=Arial color=#0000ff
size=2>Also, I'd like to point your attention, that these modules will work
as is on homogeneous systems (x86, x64), but not on mixed systems (x86
application on x64 kernel)</FONT></SPAN></P>
<P dir=ltr align=left><SPAN lang=en-us><FONT face=Arial color=#0000ff
size=2>In addition, Microsoft fixed an internal compiler bug when compiling
modules with long (__ptr64) pointers on functions (occurred only in x86
CHECKED environment).</FONT></SPAN></P>
<P dir=ltr align=left><SPAN lang=en-us><FONT face=Arial color=#0000ff
size=2>So, you should not have problem with compilation after adjusting
makefiles</FONT></SPAN></P>
<P dir=ltr align=left><SPAN lang=en-us><FONT face=Arial color=#0000ff
size=2>3. This revision contains:</FONT></SPAN></P>
<P dir=ltr align=left><SPAN lang=en-us><FONT face=Arial color=#0000ff
size=2> 3.1. All bugfixes from WinOF trunk, from rev. 939 to
1067</FONT></SPAN></P>
<P dir=ltr align=left><SPAN lang=en-us><FONT face=Arial color=#0000ff
size=2> 3.2. Mellanox __ptr64 solution and WDK poring, starting from
rev. 2164</FONT></SPAN></P>
<P dir=ltr align=left><SPAN lang=en-us><FONT face=Arial color=#0000ff
size=2> 3.3. All bugfixes and patches from connectx branches (both
Mellanox and WinOF)</FONT></SPAN></P>
<P dir=ltr align=left><SPAN lang=en-us><FONT face=Arial color=#0000ff
size=2>It was a large amount of code to be merged from 4 different svn trees
(trunk and connectx branch in WinOF, and trunk and connectx branch in
WinIB).</FONT></SPAN></P>
<P dir=ltr align=left><SPAN lang=en-us><FONT face=Arial color=#0000ff
size=2>We will appreciate your code review, just to be sure that we didn't
forget to insert any minor patch or bug fix.</FONT></SPAN></P>
<P dir=ltr align=left><SPAN lang=en-us><FONT face=Arial color=#0000ff
size=2>4. I carefully tested new trunk inside Mellanox, on different
platforms, both with DDK and WDK compilers. Please, update us about every
minor problem during your testing.</FONT></SPAN></P>
<P dir=ltr align=left><SPAN lang=en-us><FONT face=Arial color=#0000ff
size=2>Thanks,</FONT></SPAN></P>
<P dir=ltr align=left><SPAN lang=en-us><B><FONT face=Arial
size=2>Naslednikov Alexander (a.k.a XaleX)</FONT></B></SPAN></P>
<P dir=ltr align=left><SPAN lang=en-us><B><FONT face=Arial size=2>Windows
Team</FONT></B></SPAN></P>
<P dir=ltr align=left><SPAN lang=en-us><B><FONT face=Arial size=2>Mellanox
Technologies </FONT></B></SPAN></P>
<P dir=ltr align=left><SPAN lang=en-us><FONT face=Tahoma
size=1>_____________________________________________ </FONT></SPAN></P>
<P dir=ltr align=left><SPAN lang=en-us><B><FONT face=Tahoma size=1>From:
</FONT></B> <FONT face=Tahoma size=1>Alex Naslednikov
</FONT></SPAN></P>
<P dir=ltr align=left><SPAN lang=en-us><B><FONT face=Tahoma
size=1>Sent: </FONT></B> <FONT face=Tahoma size=1>Monday, April
21, 2008 7:15 PM</FONT></SPAN></P>
<P dir=ltr align=left><SPAN lang=en-us><B><FONT face=Tahoma
size=1>To: </FONT></B> <FONT face=Tahoma size=1>Alex
Naslednikov; 'Smith, Stan'; Ishai Rabinovitz</FONT></SPAN></P>
<P dir=ltr align=left><SPAN lang=en-us><B><FONT face=Tahoma
size=1>Cc: </FONT></B> <FONT face=Tahoma
size=1>'ofw@lists.openfabrics.org'</FONT></SPAN></P>
<P dir=ltr align=left><SPAN lang=en-us><B><FONT face=Tahoma
size=1>Subject: </FONT></B> <FONT
face=Tahoma size=1>RE: [ofw] WDK build environment migration
thoughts</FONT></SPAN></P>
<P dir=ltr align=left><SPAN lang=en-us><FONT face=Arial size=2>Hi all,<BR>I
would like to repost my previous message, because I haven't received yet
your comments.<BR>Our regression seems to be stable, so we are going to
commit the change into WinOF trunk the nearest time.<BR>For you convenience,
I also provide some typical changes as a patch (attached to this mail).
Please, read the explanation below before - it will help you a lot.<BR>Be
aware that all the modules not contained in Mellanox WinIB stack (like
udapl, vnic) should be also changed according to this methodology.<BR><BR>It
is very large change, so I'll appreciate your time and effort while
reviewing the methodology and the patch itself.</FONT></SPAN></P>
<P dir=ltr align=left><SPAN lang=en-us><FONT face=Arial
size=2>Thanks,<BR></FONT><BR><B></B><B><FONT
face="Times New Roman">Naslednikov Alexander (a.k.a XaleX)<BR>Windows
Team<BR>Mellanox Technologies<BR></P></FONT></B></SPAN>
<DIV align=left><BR> </DIV>
<P dir=ltr align=left><SPAN lang=en-us><FONT face=Tahoma
size=1>_____________________________________________ </FONT></SPAN></P>
<P dir=ltr align=left><SPAN lang=en-us><B><FONT face=Tahoma size=1>From:
</FONT></B> <FONT face=Tahoma size=1>Alex Naslednikov
</FONT></SPAN></P>
<P dir=ltr align=left><SPAN lang=en-us><B><FONT face=Tahoma
size=1>Sent: </FONT></B> <FONT face=Tahoma size=1>Thursday, April
10, 2008 4:09 PM</FONT></SPAN></P>
<P dir=ltr align=left><SPAN lang=en-us><B><FONT face=Tahoma
size=1>To: </FONT></B> <FONT face=Tahoma
size=1>'Smith, Stan'; Ishai Rabinovitz</FONT></SPAN></P>
<P dir=ltr align=left><SPAN lang=en-us><B><FONT face=Tahoma
size=1>Cc: </FONT></B> <FONT face=Tahoma
size=1>ofw@lists.openfabrics.org</FONT></SPAN></P>
<P dir=ltr align=left><SPAN lang=en-us><B><FONT face=Tahoma
size=1>Subject: </FONT></B> <FONT
face=Tahoma size=1>RE: [ofw] WDK build environment migration
thoughts</FONT></SPAN></P>
<P dir=ltr align=left><SPAN lang=en-us><FONT face=Arial size=2>Hi
all,</FONT></SPAN></P>
<P dir=ltr align=left><SPAN lang=en-us><FONT face=Arial size=2>It's a good
idea to clarify some points before announcing Mellanox patch for WDK porting
and __ptr64 problems.</FONT></SPAN></P>
<P dir=ltr align=left><SPAN lang=en-us><FONT face=Arial size=2>Hope, these
explanations will be informative enough and not so long.</FONT></SPAN></P>
<P dir=ltr align=left><SPAN lang=en-us><U><B><FONT face=Arial size=2>1.
__ptr64 problem</FONT></B></U><B></B></SPAN></P>
<P dir=ltr align=left><SPAN lang=en-us><FONT face=Arial size=2>Briefly
speaking, this problem arises when copying 32bit len pointer into 64bit len
pointer. In this case,</FONT><U> <FONT face=Arial size=2>signed pointer
extension</FONT></U> <FONT face=Arial size=2>will take
place.</FONT></SPAN></P>
<P dir=ltr align=left><SPAN lang=en-us><FONT face=Arial size=2>How it's
applicable to WinOF ? A lot of pointer were declared to be __ptr64
(i.e., to be always "long", even in 32bit kernel systems), that's to
preserve on unique size of structs used in IOCTL calls. The main
problem it will cause is between 32bit user applications and 64bit kernel
application.</FONT></SPAN></P>
<P dir=ltr align=left><SPAN lang=en-us><FONT face=Arial size=2>When user
code do operation like </FONT></SPAN></P>
<P dir=ltr align=left><SPAN lang=en-us><FONT face=Arial size=2>s_ptr =
&my_struct;</FONT></SPAN></P>
<P dir=ltr align=left><SPAN lang=en-us><FONT face=Arial size=2>my_type*
__ptr64 ptr = s_ptr;</FONT></SPAN></P>
<P dir=ltr align=left><SPAN lang=en-us><FONT face=Arial size=2>Than kernel
will receive ptr with invalid upper bits data (4 bytes
FF).</FONT></SPAN></P>
<P dir=ltr align=left><SPAN lang=en-us><FONT face=Arial size=2>To avoid
signed pointer extension, PtrToPtr64() function should be
used.</FONT></SPAN></P>
<P dir=ltr align=left><SPAN lang=en-us><FONT face=Arial size=2>Also, I found
some other places where dangerous signed pointer extension took place, even
on 32bit kernel.</FONT></SPAN></P>
<P dir=ltr align=left><SPAN lang=en-us><FONT face=Arial size=2>Yet another
problem that arises with __ptr64 attribute is internal compiler error
(C1001) in WDK when using __ptr64 pointer to function
(callback)</FONT></SPAN></P>
<P dir=ltr align=left><SPAN lang=en-us><FONT face=Arial size=2>This problem
was described in ofw discussion, you can see also :</FONT></SPAN></P>
<P dir=ltr align=left><SPAN lang=en-us></SPAN><A
href="http://blogs.msdn.com/texblog/archive/2005/10/31/487436.aspx"><SPAN
lang=en-us><U><FONT face=Arial color=#0000ff
size=2>http://blogs.msdn.com/texblog/archive/2005/10/31/487436.aspx</FONT></U></SPAN></A><SPAN
lang=en-us></SPAN></P>
<P dir=ltr align=left><SPAN lang=en-us></SPAN><A
href="http://lists.openfabrics.org/pipermail/ofw/2007-July/001613.html"><SPAN
lang=en-us><U><FONT face=Arial color=#0000ff
size=2>http://lists.openfabrics.org/pipermail/ofw/2007-July/001613.html</FONT></U></SPAN></A><SPAN
lang=en-us><FONT face=Arial size=2> (posted by Jan from
OFW)</FONT></SPAN></P>
<P dir=ltr align=left><SPAN lang=en-us><FONT face=Arial size=2>Our
solution:</FONT></SPAN></P>
<P dir=ltr align=left><SPAN lang=en-us><FONT face=Arial size=2>1. Initially,
we decided to remove all __ptr64 attributes except those ones inside IOCTL
structures. After, put PtrToPtr64() conversion on every assignment to long
pointer.</FONT></SPAN></P>
<P dir=ltr align=left><SPAN lang=en-us><FONT face=Arial size=2>(like
my_type* __ptr64 ptr = PtrToPtr64(s_ptr); )</FONT></SPAN></P>
<P dir=ltr align=left><SPAN lang=en-us><FONT face=Arial size=2>During this
solution, we changed a huge amount of code, so patch became unreadable. And
it was difficult to validate that all long pointer (with __ptr64 attribute)
were used in a proper manner</FONT></SPAN></P>
<P dir=ltr align=left><SPAN lang=en-us><FONT face=Arial size=2>2. So, we
decided about another solution:</FONT></SPAN></P>
<P dir=ltr align=left><SPAN lang=en-us><FONT face=Arial size=2> All
__ptr64 occurrences were replaced by either:</FONT></SPAN></P>
<P dir=ltr align=left><SPAN lang=en-us><FONT face=Arial size=2> i)
TO_LONG_PTR(type, field) macro, when occurred inside
structure</FONT></SPAN></P>
<P dir=ltr align=left><SPAN lang=en-us><FONT face=Arial size=2>ii)
VOID_PTR64 macro otherwise (defined as void macro)</FONT></SPAN></P>
<P dir=ltr align=left><SPAN lang=en-us><FONT face=Arial size=2>#define
CONCAT(str1, str2) str1##str2</FONT></SPAN></P>
<P dir=ltr align=left><SPAN lang=en-us><FONT face=Arial size=2>#define
TO_LONG_PTR(type,member_name) \</FONT></SPAN></P>
<P dir=ltr align=left><SPAN lang=en-us><FONT face=Arial
size=2> union { type member_name; uint64_t
CONCAT(member_name,_padding) ; }</FONT></SPAN></P>
<P dir=ltr align=left><SPAN lang=en-us><FONT face=Arial size=2>Thus, we can
both preserve on a uniform shapes of structs in user and kernel and to avoid
unsafe pointer arithmetic !</FONT></SPAN></P>
<P dir=ltr align=left><SPAN lang=en-us><FONT face=Arial size=2>The patch now
is much more readable, but it sill consist of thousands
lines.</FONT></SPAN></P>
<P dir=ltr align=left><SPAN lang=en-us><U><B><FONT face=Arial size=2>2.
Migration to WDK</FONT></B></U><B></B></SPAN></P>
<P dir=ltr align=left><SPAN lang=en-us><FONT face=Arial size=2>Main issue
here was to preserve on backward compatibility with DDK</FONT></SPAN></P>
<P dir=ltr align=left><SPAN lang=en-us><FONT face=Arial size=2>We were able
to compile our stack with WDK, while the main problems we found were
:</FONT></SPAN></P>
<P dir=ltr align=left><SPAN lang=en-us><FONT face=Arial size=2>1. WDK uses
newer version of SDK (SDK Vista). So, when using 2 or more versions of SDK
on the same build machine, one has to update </FONT></SPAN></P>
<P dir=ltr align=left><SPAN lang=en-us><FONT face=Arial
size=2>PLATFORM_SDK_PATH variable to point on the proper version of SDK (for
example,
PLATFORM_SDK_PATH=%sysdrive%:\PROGRA~1\MI2578~1\windows\v6.1)</FONT></SPAN></P>
<P dir=ltr align=left><SPAN lang=en-us><FONT face=Arial size=2>2.verify.src
script in WDK (new add-on) checks if your SOURCES file is in appropriate
format.</FONT></SPAN></P>
<P dir=ltr align=left><SPAN lang=en-us><FONT face=Arial size=2>For example,
you can't set implicitly path to system .dll in TARGETLIBS, but to use
USE_<MODULE_NAME> =1 macro</FONT></SPAN></P>
<P dir=ltr align=left><SPAN lang=en-us><FONT face=Arial
size=2>Example:</FONT></SPAN></P>
<P dir=ltr align=left><SPAN lang=en-us><FONT face=Arial size=2>Old code :
</FONT></SPAN></P>
<P dir=ltr align=left><SPAN lang=en-us><FONT face=Arial
size=2> ....</FONT></SPAN></P>
<P dir=ltr align=left><SPAN lang=en-us><FONT face=Arial size=2>TARGETLIBS=
\</FONT></SPAN></P>
<P dir=ltr align=left><SPAN lang=en-us><FONT face=Arial size=2>
$(CRT_LIB_PATH)\msvcprt.lib\</FONT></SPAN></P>
<P dir=ltr align=left><SPAN lang=en-us><FONT face=Arial size=2>
$(SDK_LIB_PATH)\Ws2_32.lib\</FONT></SPAN></P>
<P dir=ltr align=left><SPAN lang=en-us><FONT face=Arial size=2>
$(TARGETPATH)\*\mtcr.lib</FONT></SPAN></P>
<P dir=ltr align=left><SPAN lang=en-us><FONT face=Arial
size=2></FONT></SPAN> </P>
<P dir=ltr align=left><SPAN lang=en-us><FONT face=Arial size=2>New code
:</FONT></SPAN></P>
<P dir=ltr align=left><SPAN lang=en-us><FONT face=Arial
size=2>USE_MSVCRT=1</FONT></SPAN></P>
<P dir=ltr align=left><SPAN lang=en-us><FONT face=Arial
size=2>USE_NTDLL=1</FONT></SPAN></P>
<P dir=ltr align=left><SPAN lang=en-us><FONT face=Arial
size=2></FONT></SPAN> </P>
<P dir=ltr align=left><SPAN lang=en-us><FONT face=Arial size=2>TARGETLIBS=
\</FONT></SPAN></P>
<P dir=ltr align=left><SPAN lang=en-us><FONT face=Arial size=2>
$(SDK_LIB_PATH)\Ws2_32.lib\</FONT></SPAN></P>
<P dir=ltr align=left><SPAN lang=en-us><FONT face=Arial size=2>
$(TARGETPATH)\*\mtcr.lib</FONT></SPAN></P>
<P dir=ltr align=left><SPAN lang=en-us><FONT face=Arial size=2>3. Some other
problems, like mulitple includes error in .rc files, or problem with
substituing more than one symbol constant into string in Makefiles (some
version of WDK)</FONT></SPAN></P>
<DIV align=left><BR> </DIV>
<P dir=ltr align=left><SPAN lang=en-us><FONT face=Arial size=2>Currently, we
continue testing and will advertise these patches right after the testing
will finish</FONT></SPAN></P>
<P dir=ltr align=left><SPAN lang=en-us><B><FONT face=Arial
size=2>Naslednikov Alexander (a.k.a XaleX)</FONT></B></SPAN></P>
<P dir=ltr align=left><SPAN lang=en-us><B><FONT face=Arial size=2>Windows
Team</FONT></B></SPAN></P>
<P dir=ltr align=left><SPAN lang=en-us><B><FONT face=Arial size=2>Mellanox
Technologies</FONT></B> </SPAN></P>
<DIV align=left><BR> </DIV>
<P dir=ltr align=left><SPAN lang=en-us><FONT face=Arial size=2>-----Original
Message-----</FONT></SPAN></P>
<P dir=ltr align=left><SPAN lang=en-us><FONT face=Arial size=2>From:
ofw-bounces@lists.openfabrics.org [</FONT></SPAN><A
href="mailto:ofw-bounces@lists.openfabrics.org"><SPAN lang=en-us><U><FONT
face=Arial color=#0000ff
size=2>mailto:ofw-bounces@lists.openfabrics.org</FONT></U></SPAN></A><SPAN
lang=en-us><FONT face=Arial size=2>] On Behalf Of Smith,
Stan</FONT></SPAN></P>
<P dir=ltr align=left><SPAN lang=en-us><FONT face=Arial size=2>Sent:
Tuesday, April 08, 2008 4:10 PM</FONT></SPAN></P>
<P dir=ltr align=left><SPAN lang=en-us><FONT face=Arial size=2>To: Ishai
Rabinovitz</FONT></SPAN></P>
<P dir=ltr align=left><SPAN lang=en-us><FONT face=Arial size=2>Cc:
ofw@lists.openfabrics.org</FONT></SPAN></P>
<P dir=ltr align=left><SPAN lang=en-us><FONT face=Arial size=2>Subject:
[ofw] WDK build environment migration thoughts</FONT></SPAN></P>
<P dir=ltr align=left><SPAN lang=en-us><FONT face=Arial
size=2>Hello,</FONT></SPAN></P>
<P dir=ltr align=left><SPAN lang=en-us><FONT face=Arial size=2> I
strongly believe it would help the WinOF community in transitioning to the
WDK build environment if the connectX branch</FONT></SPAN></P>
<P dir=ltr align=left><SPAN lang=en-us><FONT face=Arial
size=2>(svn:gen1\branches\ConnectX) was used as a WDK build environment
staging grounds prior to merging the WDK modifications into the mainline
trunk.</FONT></SPAN></P>
<P dir=ltr align=left><SPAN lang=en-us><FONT face=Arial size=2>This has been
talked about before although it still (as of last Friday) does not build
using the latest WDK version.</FONT></SPAN></P>
<P dir=ltr align=left><SPAN lang=en-us><FONT face=Arial
size=2></FONT></SPAN> </P>
<P dir=ltr align=left><SPAN lang=en-us><FONT face=Arial size=2>One week
prior to merging the WDK fixes into the mainline trunk, if you were to push
all the WDK fixes into the ConnectX branch and then advertise on the ofw
mailing list the availability of a WDK build branch along
with</FONT></SPAN></P>
<P dir=ltr align=left><SPAN lang=en-us><FONT face=Arial size=2> 1) how
to build in the WDK environment,</FONT></SPAN></P>
<P dir=ltr align=left><SPAN lang=en-us><FONT face=Arial
size=2> which version of the WDK is required + a URL
link where to get the WDK.</FONT></SPAN></P>
<P dir=ltr align=left><SPAN lang=en-us><FONT face=Arial size=2> 2) An
explanation of why and how the __ptr64 attributes were removed along with
how</FONT></SPAN></P>
<P dir=ltr align=left><SPAN lang=en-us><FONT face=Arial
size=2> others should correct their codes containing
__ptr64 attributes.</FONT></SPAN></P>
<P dir=ltr align=left><SPAN lang=en-us><FONT face=Arial size=2> 3)
updates to the WinOF wiki page describing how to build in the WDK
env.</FONT></SPAN></P>
<P dir=ltr align=left><SPAN lang=en-us><FONT face=Arial size=2>Let this
branch exist for one week, receiving feedback from the list and then merge
into the mainline trunk.</FONT></SPAN></P>
<P dir=ltr align=left><SPAN lang=en-us><FONT face=Arial size=2>Using this
approach is certainly community friendly and may prevent developer
surprises.</FONT></SPAN></P>
<P dir=ltr align=left><SPAN lang=en-us><FONT face=Arial size=2>ConnectX
branch availability dates plus when the actual WDK fixes would be merged
into the mainline trunk would be published beforehand.</FONT></SPAN></P>
<DIV align=left><BR> </DIV>
<P dir=ltr align=left><SPAN lang=en-us><FONT face=Arial size=2>Thanks for
your consideration,</FONT></SPAN></P>
<P dir=ltr align=left><SPAN lang=en-us><FONT face=Arial
size=2>Stan.</FONT></SPAN></P>
<DIV align=left><BR><BR> </DIV>
<P dir=ltr align=left><SPAN lang=en-us><FONT face=Arial
size=2>_______________________________________________</FONT></SPAN></P>
<P dir=ltr align=left><SPAN lang=en-us><FONT face=Arial size=2>ofw mailing
list</FONT></SPAN></P>
<P dir=ltr align=left><SPAN lang=en-us><FONT face=Arial
size=2>ofw@lists.openfabrics.org</FONT></SPAN></P>
<P dir=ltr align=left><SPAN lang=en-us></SPAN><A
href="http://lists.openfabrics.org/cgi-bin/mailman/listinfo/ofw"><SPAN
lang=en-us><U><FONT face=Arial color=#0000ff
size=2>http://lists.openfabrics.org/cgi-bin/mailman/listinfo/ofw</FONT></U></SPAN></A><SPAN
lang=en-us></SPAN></P></BLOCKQUOTE></BLOCKQUOTE></BODY></HTML>