<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META content="text/html; charset=us-ascii" http-equiv=Content-Type>
<META name=GENERATOR content="MSHTML 8.00.6001.18702"></HEAD>
<BODY>
<DIV><FONT size=2 face=Arial><SPAN class=620373913-24012010>While debugging
another failure I have found out that if ib_register_ca fails it is not
possibale to try again until the computer is rebooted.</SPAN></FONT></DIV>
<DIV><FONT size=2 face=Arial><SPAN
class=620373913-24012010></SPAN></FONT> </DIV>
<DIV><FONT size=2 face=Arial><SPAN class=620373913-24012010>This patch solves
this problem.</SPAN></FONT></DIV>
<DIV><FONT size=2 face=Arial></FONT> </DIV>
<DIV><FONT size=2 face=Arial>Index:
bus/kernel/bus_pnp.c<BR>===================================================================<BR>---
bus/kernel/bus_pnp.c (revision 5503)<BR>+++
bus/kernel/bus_pnp.c (working copy)<BR>@@ -428,6 +428,10
@@<BR> {<BR> BUS_TRACE_EXIT( BUS_DBG_ERROR,
("ib_register_ca returned
%s.\n",<BR> ib_get_err_str(ib_status))
);<BR>+ p_ext->hca_ifc.InterfaceHeader.InterfaceDereference(<BR>+ p_ext->hca_ifc.InterfaceHeader.Context);<BR>+ p_ext->hca_ifc_taken
= FALSE;<BR>+ <BR> return
STATUS_UNSUCCESSFUL;<BR> }<BR> BUS_TRACE_EXIT(BUS_DBG_PNP,
("%s bound to CA guid %I64x\n",<BR>Index:
complib/kernel/cl_pnp_po.c<BR>===================================================================<BR>---
complib/kernel/cl_pnp_po.c (revision 5503)<BR>+++
complib/kernel/cl_pnp_po.c (working copy)<BR>@@ -429,8 +429,15
@@<BR> CL_ENTER( CL_DBG_PNP, p_ext->dbg_lvl
);<BR> <BR> status = p_ext->vfptr_pnp_po->pfn_start(
p_dev_obj, p_irp, p_action );<BR>- if( NT_SUCCESS( status ) )<BR>+ if(
NT_SUCCESS( status ) ) <BR>+ {<BR> cl_set_pnp_state(
p_ext, Started );<BR>+ }
<BR>+ else<BR>+ {<BR>+ CL_TRACE( CL_DBG_ERROR,
p_ext->dbg_lvl, <BR>+ ("p_ext->vfptr_pnp_po->pfn_start
returned %08x. \n", status) );<BR>+ }<BR> <BR> CL_EXIT(
CL_DBG_PNP, p_ext->dbg_lvl );<BR> return
status;<BR></DIV></FONT></BODY></HTML>