- We must call MiniDequeueWorkItem while holding a spin lock

svn path=/branches/aicom-network-fixes/; revision=36150
This commit is contained in:
Cameron Gutman 2008-09-12 03:06:31 +00:00
parent b26b70ddba
commit d4fe4b7aa4

View file

@ -767,9 +767,12 @@ VOID NTAPI MiniportDpc(
PVOID WorkItemContext;
NDIS_WORK_ITEM_TYPE WorkItemType;
PLOGICAL_ADAPTER Adapter = GET_LOGICAL_ADAPTER(DeferredContext);
KIRQL OldIrql;
NDIS_DbgPrint(DEBUG_MINIPORT, ("Called.\n"));
KeAcquireSpinLock(&Adapter->NdisMiniportBlock.Lock, &OldIrql);
NdisStatus =
MiniDequeueWorkItem
(Adapter, &WorkItemType, &WorkItemContext);
@ -866,6 +869,8 @@ VOID NTAPI MiniportDpc(
break;
}
}
KeReleaseSpinLock(&Adapter->NdisMiniportBlock.Lock, OldIrql);
}