<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML dir=ltr xmlns:o = "urn:schemas-microsoft-com:office:office"><HEAD>
<META http-equiv=Content-Type content="text/html; charset=iso-8859-1">
<META content="MSHTML 6.00.2900.3243" name=GENERATOR>
<STYLE></STYLE>
</HEAD>
<BODY bgColor=#ffffff>
<DIV><FONT face=Arial size=2>Thanks a lot for clearing up the
doubt.</FONT></DIV>
<DIV><FONT face=Arial size=2>I looked at co-installer's code.</FONT></DIV>
<DIV><FONT face=Arial size=2>It's the same way you told.</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>One more question</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>Which component calls the
<STRONG>IbCoInstaller </STRONG>function of
<STRONG>IbInstaller.dll</STRONG>?</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>Regards</FONT></DIV>
<DIV><FONT face=Arial size=2>Deepak</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<BLOCKQUOTE
style="PADDING-RIGHT: 0px; PADDING-LEFT: 5px; MARGIN-LEFT: 5px; BORDER-LEFT: #000000 2px solid; MARGIN-RIGHT: 0px">
<DIV style="FONT: 10pt arial">----- Original Message ----- </DIV>
<DIV
style="BACKGROUND: #e4e4e4; FONT: 10pt arial; font-color: black"><B>From:</B>
<A title=jbottorff@xsigo.com href="mailto:jbottorff@xsigo.com">Jan
Bottorff</A> </DIV>
<DIV style="FONT: 10pt arial"><B>To:</B> <A title=deepak@gslab.com
href="mailto:deepak@gslab.com">Deepak Gupta</A> ; <A
title=ofw@lists.openfabrics.org
href="mailto:ofw@lists.openfabrics.org">ofw@lists.openfabrics.org</A> </DIV>
<DIV style="FONT: 10pt arial"><B>Sent:</B> Monday, January 07, 2008 2:21
PM</DIV>
<DIV style="FONT: 10pt arial"><B>Subject:</B> RE: [ofw] Doubts regarding
loading of driver components</DIV>
<DIV><BR></DIV>
<DIV id=idOWAReplyText22204 dir=ltr>
<DIV id=idOWAReplyText54400 dir=ltr>
<DIV dir=ltr><FONT face=Arial size=2>>When are
<STRONG>ibbus.sys</STRONG> and <STRONG>ibiou.sys</STRONG> comes into the
picture.</FONT></DIV>
<DIV dir=ltr><FONT face=Arial size=2></FONT> </DIV>
<DIV dir=ltr><FONT face=Arial size=2>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt"><SPAN
style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">The driver iibus.sys is a root
enumerated driver. This means the OS just creates a device pdo on the root bus
at system boot time. The driver then is called at DriverEntry based on the
"start" entry in the service registry key. It's currently set to be loaded as
needed by the PnP manager, although to boot over the fabric it needs to
become a boot start driver. The AddDevice routine is called by the PnP managed
when it matches up the instance id reported by the root bus enumerated
pdo with the installed driver instance. This happens
early.</SPAN><o:p></o:p></P>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt"><FONT size=3><FONT
face="Times New Roman"> <o:p></o:p></FONT></FONT></P>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt"><SPAN
style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">There isn't a PnP parent child
relationship between the ibbus and mthca drivers. It's actually a very strange
relationship, which there has been some discussion of changing. The mthca and
ibbus find out about each other via the PnP interface notifications, and then
the mthca driver uses the ibbus driver to implement some of the common
functionality (via a function call interface). The OS thinks (as
displayed by devicetree) the mthca driver is a bus driver, because it
responds to query relationship PnP irps, although the actual work is done by
ibbus.</SPAN><o:p></o:p></P>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt"><FONT size=3><FONT
face="Times New Roman"> <o:p></o:p></FONT></FONT></P>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt"><SPAN
style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">The registry entry that
causes the root bus enumerator to create the pdo for ibbus is created by the
mthca device coinstaller using driver setup apis. The mthca driver is found on
the PCI bus by the PCI bus enumerator.</SPAN><o:p></o:p></P>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt"><FONT size=3><FONT
face="Times New Roman"> <o:p></o:p></FONT></FONT></P>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt"><SPAN
style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">Jan</SPAN><o:p></o:p></P></FONT><FONT
face=Arial size=2></FONT></DIV></DIV></DIV><BR>-- <BR>This message has been
scanned for viruses and <BR>dangerous content by <A
href="http://www.mailscanner.info/"><B>MailScanner</B></A>, and is
<BR>believed to be clean. </BLOCKQUOTE></BODY></HTML>