[ofw] RE: Ibbus as a filter driver for mthca.

Fab Tillier ftillier at windows.microsoft.com
Wed Aug 6 09:07:39 PDT 2008


> I understand what your saying, although semantically we reach the same
> point either way - bus relations are reported once. What's the
> advantage of having the HCA driver do a nop function just to complete
> an irp?
> I will revert the change and pass down the irp to the HCA driver and
> let it nop and irp complete.

The HCA driver should pass the IRP down too (it currently does so).

> BTW, when I do this the HCA driver will not unload do to 4 lingering
> references on the hca_dev_ext_t p_ext->usecnt. 'usecnt' is decremented
> in hca_verbs.c:mlnx_um_close().
> Not clear at this juncture as to who has opened the hca and not closed
> it. When loading mthca.inf I've cancelled the IPoIB driver loads so
> it's somewhat of a mystery to date.

Likely WSD is enabled from a previous install.  The problem here is that user-mode IBAL will open every HCA in the system when anyone calls ib_open_al, even if the user never opens the HCA.  WSD could work around this by not calling ib_open_al until there are addresses for it to handle (IBAT functionality is provided by IPoIB and is independent from IBAL).

A non-zero usecnt from mlnx_um_close means there's a user-mode client.  See what 'tasklist /m ib*' returns - it should list all processes that are using DLLs that start with 'ib'.

-Fab



More information about the ofw mailing list