PFREE_COMMON_BUFFER función de devolución de llamada (wdm.h)

La rutina FreeCommonBuffer libera un búfer común asignado por AllocateCommonBuffer, junto con todos los recursos que usa el búfer.

Sintaxis

PFREE_COMMON_BUFFER PfreeCommonBuffer;

void PfreeCommonBuffer(
  [in] PDMA_ADAPTER DmaAdapter,
  [in] ULONG Length,
  [in] PHYSICAL_ADDRESS LogicalAddress,
  [in] PVOID VirtualAddress,
  [in] BOOLEAN CacheEnabled
)
{...}

Parámetros

[in] DmaAdapter

Puntero a la estructura DMA_ADAPTER devuelta por IoGetDmaAdapter que representa el adaptador de bus-master o el controlador DMA.

[in] Length

Especifica el número de bytes que se van a desasignar.

[in] LogicalAddress

Especifica la dirección lógica del intervalo de memoria asignado.

[in] VirtualAddress

Puntero a la dirección virtual correspondiente del intervalo de memoria asignado.

[in] CacheEnabled

Indica si la memoria asignada está almacenada en caché.

Valor devuelto

None

Observaciones

FreeCommonBuffer no es una rutina del sistema a la que se puede llamar directamente por su nombre. Esta rutina solo es invocable por puntero de la dirección devuelta en una estructura de DMA_OPERATIONS . Los controladores obtienen la dirección de esta rutina mediante una llamada a IoGetDmaAdapter.

Para liberar un búfer común, un controlador llama a FreeCommonBuffer para desasignación de sus direcciones lógicas y virtuales. Los parámetros pasados a FreeCommonBuffer deben coincidir exactamente con los pasados y devueltos desde AllocateCommonBuffer. Un controlador no puede liberar parte de un búfer común asignado.

Requisitos

Requisito Value
Cliente mínimo compatible Disponible a partir de Windows 2000.
Plataforma de destino Escritorio
Encabezado wdm.h (incluya Wdm.h, Ntddk.h, Ntifs.h)
IRQL PASSIVE_LEVEL
Reglas de cumplimiento de DDI IrqlDispatch(wdm)

Consulte también

AllocateCommonBuffer

DMA_ADAPTER

DMA_OPERATIONS

IoGetDmaAdapter