[ofw] CM ref counting issues...

Sean Hefty sean.hefty at intel.com
Wed Dec 9 11:29:40 PST 2009


>>   4.00005c  fffffa80036c2720 fffe752f Blocked    nt!KiSwapContext+0x7f
>
>Why is this thread blocked trying to disconnect the QP?  Could this be holding
>the ref on the CM ID?

Okay - this thread is blocked synchronizing with the provider.

>>                                         nt!KiSwapThread+0x2fa
>>                                         nt!KeWaitForSingleObject+0x2da
>> winverbs!WvProviderDisableRemove+0x4a

ProviderDisableRemove waits on an event while another thread has exclusive
access to the provider.   Exclusive access to the provider is acquired when
processing device removal events, so all hardware resources can be released, and
also when handling provider cleanup - after an application crash.  Since the
provider cleanup thread is hung trying to cleanup the CM IDs, this thread is
also blocked.

Anyway, I don't see a specific problem with this, but I will still look at this
interaction in more detail.  For now, I'm trying to understand the CM/MAD
interactions in more detail.

- Sean




More information about the ofw mailing list