<!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.5730.13" name=GENERATOR></HEAD>
<BODY>
<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></BODY></HTML>