<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML xmlns="http://www.w3.org/TR/REC-html40" xmlns:ex12t =
"http://schemas.microsoft.com/exchange/services/2006/types" xmlns:m =
"http://schemas.microsoft.com/office/2004/12/omml" xmlns:mver =
"http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:wf =
"http://schemas.microsoft.com/sharepoint/soap/workflow/" xmlns:udcxf =
"http://schemas.microsoft.com/data/udc/xmlfile" xmlns:xsi =
"http://www.w3.org/2001/XMLSchema-instance" xmlns:sps =
"http://schemas.microsoft.com/sharepoint/soap/" xmlns:xsd =
"http://www.w3.org/2001/XMLSchema" xmlns:udc =
"http://schemas.microsoft.com/data/udc" xmlns:dsp =
"http://schemas.microsoft.com/sharepoint/dsp" xmlns:ds =
"http://www.w3.org/2000/09/xmldsig#" xmlns:dir =
"http://schemas.microsoft.com/sharepoint/soap/directory/" xmlns:ois =
"http://schemas.microsoft.com/sharepoint/soap/ois/" xmlns:x2 =
"http://schemas.microsoft.com/office/excel/2003/xml" XMLNS:D = "DAV:" xmlns:q =
"http://schemas.xmlsoap.org/soap/envelope/" xmlns:html =
"http://www.w3.org/TR/REC-html40" xmlns:oa =
"urn:schemas-microsoft-com:office:activation" xmlns:c =
"urn:schemas-microsoft-com:office:component:spreadsheet" xmlns:ss =
"urn:schemas-microsoft-com:office:spreadsheet" xmlns:b =
"urn:schemas-microsoft-com:office:publisher" xmlns:z = "#RowsetSchema" xmlns:rs
= "urn:schemas-microsoft-com:rowset" xmlns:s =
"uuid:BDC6E3F0-6DA3-11d1-A2A3-00AA00C14882" xmlns:dt =
"uuid:C2F41010-65B3-11d1-A29F-00AA00C14882" xmlns:a =
"urn:schemas-microsoft-com:office:access" xmlns:p =
"urn:schemas-microsoft-com:office:powerpoint" xmlns:x =
"urn:schemas-microsoft-com:office:excel" xmlns:w =
"urn:schemas-microsoft-com:office:word" xmlns:o =
"urn:schemas-microsoft-com:office:office" xmlns:v =
"urn:schemas-microsoft-com:vml"><HEAD>
<META http-equiv=Content-Type content="text/html; charset=us-ascii">
<STYLE>@font-face {
font-family: Cambria Math;
}
@font-face {
font-family: Calibri;
}
@page Section1 {size: 8.5in 11.0in; margin: 1.0in 1.0in 1.0in 1.0in; }
P.MsoNormal {
FONT-SIZE: 11pt; MARGIN: 0in 0in 0pt; FONT-FAMILY: "Calibri","sans-serif"
}
LI.MsoNormal {
FONT-SIZE: 11pt; MARGIN: 0in 0in 0pt; FONT-FAMILY: "Calibri","sans-serif"
}
DIV.MsoNormal {
FONT-SIZE: 11pt; MARGIN: 0in 0in 0pt; FONT-FAMILY: "Calibri","sans-serif"
}
A:link {
COLOR: blue; TEXT-DECORATION: underline; mso-style-priority: 99
}
SPAN.MsoHyperlink {
COLOR: blue; TEXT-DECORATION: underline; mso-style-priority: 99
}
A:visited {
COLOR: purple; TEXT-DECORATION: underline; mso-style-priority: 99
}
SPAN.MsoHyperlinkFollowed {
COLOR: purple; TEXT-DECORATION: underline; mso-style-priority: 99
}
SPAN.EmailStyle17 {
COLOR: windowtext; FONT-FAMILY: "Calibri","sans-serif"; mso-style-type: personal-compose
}
.MsoChpDefault {
mso-style-type: export-only
}
DIV.Section1 {
page: Section1
}
</STYLE>
<!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
<META content="MSHTML 6.00.6000.16414" name=GENERATOR></HEAD>
<BODY lang=EN-US vLink=purple link=blue>
<DIV><SPAN class=122240909-10052007><FONT face=Arial color=#0000ff size=2>I
think solution 2 is the way we need to go.</FONT></SPAN></DIV>
<DIV><SPAN class=122240909-10052007><FONT face=Arial color=#0000ff size=2>For
the long term I would like to see IBBUS.sys functionality split into 2
modules (when we had ibbus.sys and ibal.sys)</FONT></SPAN></DIV>
<DIV><SPAN class=122240909-10052007><FONT face=Arial color=#0000ff
size=2></FONT></SPAN> </DIV>
<DIV><SPAN class=122240909-10052007><FONT face=Arial color=#0000ff size=2>1. The
creation and management of the virtual devices should be implemented as filter
driver over the MTHCA ibbus.sys</FONT></SPAN></DIV>
<DIV><SPAN class=122240909-10052007><FONT face=Arial color=#0000ff
size=2>2. all the VERBS functionality should implemented as kernel
module without any dependence to the HW.</FONT></SPAN></DIV>
<DIV><SPAN class=122240909-10052007><FONT face=Arial color=#0000ff
size=2></FONT></SPAN> </DIV>
<DIV><SPAN class=122240909-10052007><FONT face=Arial color=#0000ff
size=2></FONT></SPAN> </DIV>
<DIV><SPAN class=122240909-10052007><FONT face=Arial color=#0000ff
size=2>Thanks</FONT></SPAN></DIV>
<DIV><SPAN class=122240909-10052007><FONT face=Arial color=#0000ff size=2>Yossi
</FONT></SPAN></DIV>
<DIV><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>Fab
Tillier<BR><B>Sent:</B> Thursday, May 10, 2007 3:19 AM<BR><B>To:</B>
ofw@lists.openfabrics.org<BR><B>Subject:</B> [ofw] Loading drivers on
LHS<BR></FONT><BR></DIV>
<DIV></DIV>
<DIV class=Section1>
<P class=MsoNormal>Hi folks,<o:p></o:p></P>
<P class=MsoNormal><o:p> </o:p></P>
<P class=MsoNormal>I tried loading the IB drivers on LHS (Windows Server code
name “Longhorn”) and it doesn’t work. I tracked the problem down to the
fact that the driver packages are now staged to a special system folder before
being installed. The IB co-installer uses the path of the binaries to
find the drivers for the “InfiniBand Fabric” device, but since these didn’t
get staged with the HCA drivers, it fails and with it installation of the HCA
drivers fails.<o:p></o:p></P>
<P class=MsoNormal><o:p> </o:p></P>
<P class=MsoNormal>I can’t come up with a really good solution to this, so
wanted to start a discussion for how this should be addressed.<o:p></o:p></P>
<P class=MsoNormal><o:p> </o:p></P>
<P class=MsoNormal>Solution 1: Don’t fail the HCA driver installation if the
co-installer can’t install the IB Bus device.<o:p></o:p></P>
<P class=MsoNormal>While this allows the HCA drivers to install, it doesn’t
install the IB Bus, which means no user-mode app will work (no IBAL device for
it to open), and no IPoIB or other child devices (no bus driver) will be
reported to the system. A manual installation of the drivers for the IB
bus driver is required to get things really running, so there’s no longer an
automatic installation path through the device manager. Things can be
scripted with devcon to work around this, though.<o:p></o:p></P>
<P class=MsoNormal><o:p> </o:p></P>
<P class=MsoNormal>Solution 2: Make ibbus an upper filter for the HCA, include
all its information in the HCA’s INF file.<o:p></o:p></P>
<P class=MsoNormal>This solves the installation issue (and eliminates the
co-installer), and kernel clients will get created as needed, so it’s a pretty
nice solution (it actually simplifies the PnP notifications required of HCA
drivers). The problem is that it impacts user-mode apps.
Currently, a user-mode client can load before any HCA is available in the
system, and use the IBAL PnP notifications to detect arrival of an HCA.
If the IB bus driver is loaded as an upper filter, it will not be loaded until
an HCA is loaded, so user-mode applications will no longer be able to rely on
IBAL for CA PnP notifications. This would impact WSD for sure, though
WSD depends on the IBAT device anyway for address resolution, and this won’t
exist until the IB bus exists. So WSD could be re-architected to
delay-load IBAL until there are addresses reported by IBAT.<o:p></o:p></P>
<P class=MsoNormal><o:p> </o:p></P>
<P class=MsoNormal>Neither solution is all that great. Any other
thoughts and ideas?<o:p></o:p></P>
<P class=MsoNormal><o:p> </o:p></P>
<P class=MsoNormal>-Fab<o:p></o:p></P></DIV></BLOCKQUOTE></BODY></HTML>