<!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>