Freigeben über


DMA_ABORT_HANDLER Rückruffunktion (netdma.h)

Hinweis Die NetDMA-Schnittstelle wird nicht unterstützt.

in Windows 8 und höher.

 
Die ProviderAbortDma-Funktion bricht alle DMA-Übertragungen ab, die einem DMA-Kanal zugeordnet sind.

Syntax

DMA_ABORT_HANDLER DmaAbortHandler;

NTSTATUS DmaAbortHandler(
  [in] PVOID ProviderChannelContext
)
{...}

Parameter

[in] ProviderChannelContext

Ein Zeiger, der den Kontextbereich eines DMA-Kanals identifiziert. Der DMA-Anbieter hat dieses Handle an netDMA an dem Speicherort zurückgegeben, der im pProviderChannelContext-Parameter des ProviderAllocateDmaChannel-Funktion .

Rückgabewert

ProviderAbortDma gibt einen der folgenden status-Werte zurück:

Rückgabecode Beschreibung
STATUS_SUCCESS
Der Vorgang wurde erfolgreich abgeschlossen.
STATUS_UNSUCCESSFUL
Der Vorgang ist aus nicht angegebenen Gründen fehlgeschlagen.

Hinweise

Die ProviderAbortDma-Funktion ist eine optionale Funktion für NetDMA-Anbieter. Die NetDMA-Schnittstelle kann ggf. die ProviderAbortDma-Funktion eines DMA-Anbietertreibers aufrufen, um alle DMA-Übertragungen abzubrechen, die in einem DMA-Kanal geplant wurden.

In ProviderAbortDma sollte der DMA-Anbieter die Übertragung sofort beenden, ohne die Übertragung der Daten abzuschließen, die dem aktuellen DMA-Deskriptor zugeordnet sind. Wenn der Abschluss status Berichterstellung aktiviert ist, schreibt die DMA-Engine den NetDmaTransferStatusHalted-status in die Adresse, die in den Membern CompletionVirtualAddress und CompletionPhysicalAddress im NET_DMA_CHANNEL_PARAMETERS Struktur.

Nach Abschluss des Abbruchvorgangs muss der DMA-Kanal bereit sein, damit die NetDMA-Schnittstelle die ProviderStartDma-Funktion aufrufen kann. Die NetDMA-Schnittstelle ruft die ProviderAppendDma-Funktion erst auf, nachdem die Übertragung neu gestartet wurde.

NetDMA ruft ProviderAbortDma unter IRQL <= DISPATCH_LEVEL auf.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Unterstützt für NetDMA 1.0-Treiber in Windows Vista.
Zielplattform Windows
Kopfzeile netdma.h (netdma.h einschließen)
IRQL <= DISPATCH_LEVEL

Weitere Informationen

NET_DMA_CHANNEL_PARAMETERS

ProviderAllocateDmaChannel

ProviderAppendDma

ProviderStartDma