NdisMFreeNetBufferSGList (Compact 2013)
3/26/2014
Bus-master miniport drivers call the NdisMFreeNetBufferSGList function to free scatter/gather list resources that were allocated by calling the NdisMAllocateNetBufferSGList function.
Syntax
VOID
NdisMFreeNetBufferSGList(
IN NDIS_HANDLE NdisMiniportDmaHandle,
IN PSCATTER_GATHER_LIST pSGL,
IN PNET_BUFFER NetBuffer
);
Parameters
- NdisMiniportDmaHandle
A handle to a context area that NDIS uses to manage a DMA resource. The caller obtained this handle by calling the NdisMRegisterScatterGatherDma function.
- pSGL
A pointer to a miniport driver scatter/gather list buffer.
- NetBuffer
A pointer to the NET_BUFFER structure associated with the specified scatter/gather list buffer.
Return Value
None
Remarks
Bus-master miniport drivers must call the NdisMFreeNetBufferSGList function to free a scatter/gather list. A miniport driver typically calls NdisMFreeNetBufferSGList from its MiniportInterruptDPC function while it is handling a send complete interrupt or at any time that the driver no longer requires the scatter/gather list. Do not call NdisMFreeNetBufferSGList while the driver or hardware is still accessing the memory that is described by the NET_BUFFER structure that is associated with the scatter/gather list.
Miniport drivers can free the buffer that was specified in the ScatterGatherListBuffer parameter of the NdisMAllocateNetBufferSGList function after NdisMFreeNetBufferSGList returns. However, frequently, it is more efficient to reuse the buffer for subsequent DMA operations.
Requirements
Header |
ndis.h |
See Also
Reference
NDIS Scatter/Gather DMA Functions
NET_BUFFER
NdisMAllocateNetBufferSGList
NdisMRegisterScatterGatherDma