- Implement NdisDprFreePacket

- Implement NdisDprFreePacketNonInterlocked

svn path=/branches/aicom-network-fixes/; revision=36192
This commit is contained in:
Cameron Gutman 2008-09-13 16:40:45 +00:00
parent 8bea43b223
commit 70f9713881

View file

@ -791,7 +791,7 @@ NdisDprAllocatePacketNonInterlocked(
/*
* @unimplemented
* @implemented
*/
VOID
EXPORT
@ -803,11 +803,17 @@ NdisDprFreePacket(
* Packet = Pointer to packet to free
*/
{
NDIS_DbgPrint(MAX_TRACE, ("Packet (0x%X).\n", Packet));
KeAcquireSpinLockAtDpcLevel(&((NDISI_PACKET_POOL*)Packet->Private.Pool)->SpinLock.SpinLock);
Packet->Private.Head = (PNDIS_BUFFER)((NDISI_PACKET_POOL*)Packet->Private.Pool)->FreeList;
((NDISI_PACKET_POOL*)Packet->Private.Pool)->FreeList = Packet;
KeReleaseSpinLockFromDpcLevel(&((NDISI_PACKET_POOL*)Packet->Private.Pool)->SpinLock.SpinLock);
}
/*
* @unimplemented
* @implemented
*/
VOID
EXPORT
@ -819,6 +825,10 @@ NdisDprFreePacketNonInterlocked(
* Packet = Pointer to packet to free
*/
{
NDIS_DbgPrint(MAX_TRACE, ("Packet (0x%X).\n", Packet));
Packet->Private.Head = (PNDIS_BUFFER)((NDISI_PACKET_POOL*)Packet->Private.Pool)->FreeList;
((NDISI_PACKET_POOL*)Packet->Private.Pool)->FreeList = Packet;
}