Condividi tramite


PFREE_COMMON_BUFFER funzione di callback (wdm.h)

La routine FreeCommonBuffer libera un buffer comune allocato da AllocateCommonBuffer, insieme a tutte le risorse usate dal buffer.

Sintassi

PFREE_COMMON_BUFFER PfreeCommonBuffer;

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

Parametri

[in] DmaAdapter

Puntatore alla struttura DMA_ADAPTER restituita da IoGetDmaAdapter che rappresenta l'adattatore master del bus o il controller DMA.

[in] Length

Specifica il numero di byte da deallocare.

[in] LogicalAddress

Specifica l'indirizzo logico dell'intervallo di memoria allocato.

[in] VirtualAddress

Puntatore all'indirizzo virtuale corrispondente dell'intervallo di memoria allocato.

[in] CacheEnabled

Indica se la memoria allocata viene memorizzata nella cache.

Valore restituito

nessuno

Osservazioni

FreeCommonBuffer non è una routine di sistema che può essere chiamata direttamente per nome. Questa routine è chiamabile solo per puntatore dall'indirizzo restituito in una struttura di DMA_OPERATIONS . I driver ottengono l'indirizzo di questa routine chiamando IoGetDmaAdapter.

Per rilasciare un buffer comune, un driver chiama FreeCommonBuffer per annullare il mapping dei relativi indirizzi logici e virtuali. I parametri passati a FreeCommonBuffer devono corrispondere esattamente a quelli passati e restituiti da AllocateCommonBuffer. Un driver non può liberare parte di un buffer comune allocato.

Requisiti

Requisito Valore
Client minimo supportato Disponibile a partire da Windows 2000.
Piattaforma di destinazione Desktop
Intestazione wdm.h (include Wdm.h, Ntddk.h, Ntifs.h)
IRQL PASSIVE_LEVEL
Regole di conformità DDI IrqlDispatch(wdm)

Vedi anche

AllocateCommonBuffer

DMA_ADAPTER

DMA_OPERATIONS

IoGetDmaAdapter