DMA_APPEND_HANDLER funzione di callback (netdma.h)
La funzione ProviderAppendDma aggiunge un elenco collegato di descrittori DMA all'ultimo descrittore in un canale DMA.
Sintassi
DMA_APPEND_HANDLER DmaAppendHandler;
NTSTATUS DmaAppendHandler(
[in] PVOID ProviderChannelContext,
[in] PNET_DMA_DESCRIPTOR DescriptorVirtualAddress,
[in] PHYSICAL_ADDRESS DescriptorPhysicalAddress,
[in] ULONG DescriptorCount
)
{...}
Parametri
[in] ProviderChannelContext
Puntatore che identifica l'area di contesto del canale DMA. Il provider DMA ha restituito questo handle a NetDMA nel percorso specificato nel parametro pProviderChannelContext dell'oggetto Funzione ProviderAllocateDmaChannel .
[in] DescriptorVirtualAddress
Puntatore all'indirizzo virtuale della prima struttura NET_DMA_DESCRIPTOR in un elenco collegato di descrittori DMA. L'indirizzo fisico corrispondente viene specificato nel parametro DescriptorPhysicalAddress .
[in] DescriptorPhysicalAddress
Puntatore all'indirizzo fisico del primo descrittore DMA in un elenco collegato di descrittori DMA. L'indirizzo virtuale corrispondente viene specificato nel parametro DescriptorVirtualAddress .
[in] DescriptorCount
Numero di descrittori DMA in DescriptorVirtualAddress .
Valore restituito
ProviderAppendDma restituisce uno dei valori di stato seguenti:
Codice restituito | Descrizione |
---|---|
|
Operazione riuscita. |
|
L'operazione non è riuscita per motivi non specificati. |
Commenti
L'interfaccia NetDMA chiama una funzione provider DMA ProviderAppendDma per aggiungere un elenco collegato di descrittori DMA dopo l'ultimo descrittore in un canale DMA. L'interfaccia NetDMA può chiamare ProviderAppendDma qualsiasi numero di volte dopo l'avvio di un trasferimento DMA. Tuttavia, l'interfaccia NetDMA deve chiamare la funzione ProviderStartDma dopo la reimpostazione o l'interruzione del canale oppure dopo l'allocazione del canale DMA.
Se il descrittore corrente in un trasferimento attivo è l'ultimo descrittore, il motore DMA deve rileggere l'ultimo descrittore. Il membro NextDescriptor nell'ultima struttura NET_DMA_DESCRIPTOR deve avere un nuovo indirizzo e il motore DMA deve continuare con il descrittore successivo. Se il descrittore corrente non è l'ultimo descrittore, il motore DMA può continuare l'elaborazione dei descrittori DMA senza attività aggiuntive.
NetDMA chiama ProviderAppendDma in IRQL <= DISPATCH_LEVEL.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Supportato per i driver NetDMA 2.0 in Windows Server 2008. Supportato per i driver NetDMA 1.1 in Windows Server 2008. Supportato per i driver NetDMA 1.0 in Windows Server 2008 e Windows Vista. |
Piattaforma di destinazione | Windows |
Intestazione | netdma.h (include Netdma.h) |
IRQL | <= DISPATCH_LEVEL |
Vedi anche
Commenti e suggerimenti
https://aka.ms/ContentUserFeedback.
Presto disponibile: Nel corso del 2024 verranno gradualmente disattivati i problemi di GitHub come meccanismo di feedback per il contenuto e ciò verrà sostituito con un nuovo sistema di feedback. Per altre informazioni, vedereInvia e visualizza il feedback per