- Call ProtocolRequestComplete at the correct IRQL

- Call ProtocolSendComplete at the correct IRQL

svn path=/branches/aicom-network-fixes/; revision=36149
This commit is contained in:
Cameron Gutman 2008-09-12 02:58:08 +00:00
parent 151277c30a
commit b26b70ddba

View file

@ -314,15 +314,18 @@ MiniRequestComplete(
IN NDIS_STATUS Status) IN NDIS_STATUS Status)
{ {
PNDIS_REQUEST_MAC_BLOCK MacBlock = (PNDIS_REQUEST_MAC_BLOCK)Request->MacReserved; PNDIS_REQUEST_MAC_BLOCK MacBlock = (PNDIS_REQUEST_MAC_BLOCK)Request->MacReserved;
KIRQL OldIrql;
NDIS_DbgPrint(DEBUG_MINIPORT, ("Called.\n")); NDIS_DbgPrint(DEBUG_MINIPORT, ("Called.\n"));
KeRaiseIrql(DISPATCH_LEVEL, &OldIrql);
if( MacBlock->Binding->RequestCompleteHandler ) { if( MacBlock->Binding->RequestCompleteHandler ) {
(*MacBlock->Binding->RequestCompleteHandler)( (*MacBlock->Binding->RequestCompleteHandler)(
MacBlock->Binding->ProtocolBindingContext, MacBlock->Binding->ProtocolBindingContext,
Request, Request,
Status); Status);
} }
KeLowerIrql(OldIrql);
} }
VOID NTAPI VOID NTAPI
@ -340,15 +343,18 @@ MiniSendComplete(
*/ */
{ {
PADAPTER_BINDING AdapterBinding; PADAPTER_BINDING AdapterBinding;
KIRQL OldIrql;
NDIS_DbgPrint(DEBUG_MINIPORT, ("Called.\n")); NDIS_DbgPrint(DEBUG_MINIPORT, ("Called.\n"));
AdapterBinding = (PADAPTER_BINDING)Packet->Reserved[0]; AdapterBinding = (PADAPTER_BINDING)Packet->Reserved[0];
KeRaiseIrql(DISPATCH_LEVEL, &OldIrql);
(*AdapterBinding->ProtocolBinding->Chars.SendCompleteHandler)( (*AdapterBinding->ProtocolBinding->Chars.SendCompleteHandler)(
AdapterBinding->NdisOpenBlock.ProtocolBindingContext, AdapterBinding->NdisOpenBlock.ProtocolBindingContext,
Packet, Packet,
Status); Status);
KeLowerIrql(OldIrql);
} }
@ -370,15 +376,18 @@ MiniTransferDataComplete(
IN UINT BytesTransferred) IN UINT BytesTransferred)
{ {
PADAPTER_BINDING AdapterBinding; PADAPTER_BINDING AdapterBinding;
KIRQL OldIrql;
NDIS_DbgPrint(DEBUG_MINIPORT, ("Called.\n")); NDIS_DbgPrint(DEBUG_MINIPORT, ("Called.\n"));
AdapterBinding = (PADAPTER_BINDING)Packet->Reserved[0]; AdapterBinding = (PADAPTER_BINDING)Packet->Reserved[0];
KeRaiseIrql(DISPATCH_LEVEL, &OldIrql);
(*AdapterBinding->ProtocolBinding->Chars.SendCompleteHandler)( (*AdapterBinding->ProtocolBinding->Chars.SendCompleteHandler)(
AdapterBinding->NdisOpenBlock.ProtocolBindingContext, AdapterBinding->NdisOpenBlock.ProtocolBindingContext,
Packet, Packet,
Status); Status);
KeLowerIrql(OldIrql);
} }