Microsoft Windows CE 3.0  

NdisFreeMemory

Important:
This is retired content. This content is outdated and is no longer being maintained. It is provided as a courtesy for individuals who are still using these technologies. This content may contain URLs that were valid when originally published, but now link to sites or pages that no longer exist.

This function releases a block of memory previously allocated with the NdisAllocateMemoryfunction.

VOID
NdisFreeMemory(
IN PVOID
VirtualAddress
,
IN UINT
Length
,
IN UINT
MemoryFlags
);

Parameters

VirtualAddress
Pointer to the base virtual address of the allocated memory. This address was returned by the NdisAllocateMemoryfunction.
Length
Specifies the size, in bytes, of the memory block to be released. This parameter must be identical to the Lengththat was passed to NdisAllocateMemory.
MemoryFlags
Specifies 0 or the bitmask originally passed to NdisAllocateMemoryfor the preceding range; one of the following:
Value Description
0 Nonpaged system-space memory.
NDIS_MEMORY_CONTIGUOUS Physically contiguous memory.
NDIS_MEMORY_NONCACHED Noncached memory.

This value must be identical to the MemoryFlagsparameter that was passed to NdisAllocateMemory.

Remarks

The parameters passed to this function must be identical to those passed to NdisAllocateMemorywhen the block of memory was allocated. That is, a caller of this function cannot release a subrange of the block that was allocated.

Because noncached memory and contiguous memory are seldom released until the allocating NIC driver is unloading, callers of this function usually are running at IRQL PASSIVE_LEVEL for these types of deallocations.

A driver that calls this function can run at IRQL <= DISPATCH_LEVEL when releasing memory that was allocated from nonpaged system space or that was allocated as noncached memory. Callers must be running at IRQL PASSIVE_LEVEL to release contiguous allocations.

Requirements

Runs on Versions Defined in Include Link to
Windows CE OS 2.0 and later Ndis.h    
Note   This API is part of the complete Windows CE OS package as provided by Microsoft. The functionality of a particular platform is determined by the original equipment manufacturer (OEM) and some devices may not support this API.

See Also

NdisAllocateMemory



 Last updated on Tuesday, July 13, 2004

© 2004 Microsoft Corporation. All rights reserved.