Applied on 2682,2683 Thanks Tzachi
________________________________ From: [email protected] [mailto:[email protected]] On Behalf Of Tzachi Dar Sent: Sunday, January 24, 2010 3:42 PM To: [email protected] Subject: [ofw] patch: Release hca interface when loading of ibal fails 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. This patch solves this problem. Index: bus/kernel/bus_pnp.c =================================================================== --- bus/kernel/bus_pnp.c (revision 5503) +++ bus/kernel/bus_pnp.c (working copy) @@ -428,6 +428,10 @@ { BUS_TRACE_EXIT( BUS_DBG_ERROR, ("ib_register_ca returned %s.\n", ib_get_err_str(ib_status)) ); + p_ext->hca_ifc.InterfaceHeader.InterfaceDereference( + p_ext->hca_ifc.InterfaceHeader.Context); + p_ext->hca_ifc_taken = FALSE; + return STATUS_UNSUCCESSFUL; } BUS_TRACE_EXIT(BUS_DBG_PNP, ("%s bound to CA guid %I64x\n", Index: complib/kernel/cl_pnp_po.c =================================================================== --- complib/kernel/cl_pnp_po.c (revision 5503) +++ complib/kernel/cl_pnp_po.c (working copy) @@ -429,8 +429,15 @@ CL_ENTER( CL_DBG_PNP, p_ext->dbg_lvl ); status = p_ext->vfptr_pnp_po->pfn_start( p_dev_obj, p_irp, p_action ); - if( NT_SUCCESS( status ) ) + if( NT_SUCCESS( status ) ) + { cl_set_pnp_state( p_ext, Started ); + } + else + { + CL_TRACE( CL_DBG_ERROR, p_ext->dbg_lvl, + ("p_ext->vfptr_pnp_po->pfn_start returned %08x. \n", status) ); + } CL_EXIT( CL_DBG_PNP, p_ext->dbg_lvl ); return status;
_______________________________________________ ofw mailing list [email protected] http://lists.openfabrics.org/cgi-bin/mailman/listinfo/ofw
