NdisUpdateSharedMemory

VOID
NdisUpdateSharedMemory(
IN NDIS_HANDLE NdisAdapterHandle,
IN ULONG Length,
IN PVOID VirtualAddress,
IN NDIS_PHYSICAL_ADDRESS PhysicalAddress
);

NdisUpdateSharedMemory ensures that data the driver reads from a shared memory region is kept current.

Parameters

NdisAdapterHandle

Specifies the handle that the NDIS interface library associates with the network interface card.

Length

Specifies the size, in bytes, of the shared memory.

VirtualAddress

Specifies the virtual address of the shared memory.

PhysicalAddress

Identifies the physical address of the shared memory.

Comments

NdisUpdateSharedMemory ensures that any data the network interface card writes is present in physical memory at the virtual address written by NdisAllocateSharedMemory.

For cached shared memory, this function does not ensure that the cache fully reflects physical memory. The NIC driver must flush the cache before the read operation begins and protect the physical memory from access until the read operation has completed.

Callers of NdisUpdateSharedMemory run at IRQL <= DISPATCH_LEVEL.

See Also

NdisAllocateSharedMemory, NdisFlushBuffer