Share via


DMA_SUSPEND_HANDLER Rückruffunktion (netdma.h)

Hinweis Die NetDMA-Schnittstelle wird nicht unterstützt.

in Windows 8 und höher.

 
Die ProviderSuspendDma-Funktion hält die DMA-Übertragungen an, die derzeit in einem DMA-Kanal ausgeführt werden.

Syntax

DMA_SUSPEND_HANDLER DmaSuspendHandler;

NTSTATUS DmaSuspendHandler(
  [in]  PVOID ProviderChannelContext,
  [out] PPHYSICAL_ADDRESS *pLastDescriptor
)
{...}

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 .

[out] pLastDescriptor

Ein Zeiger auf eine Variable, die die physische Adresse des letzten erfolgreich verarbeiteten DMA-Deskriptors enthält. Der DMA-Anbieter stellt diese Adresse bereit, bevor er von ProviderSuspendDma zurückgibt.

Rückgabewert

ProviderSuspendDma 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 ProviderSuspendDma-Funktion ist eine optionale Funktion für NetDMA-Anbieter. Die NetDMA-Schnittstelle kann ggf. die ProviderSuspendDma-Funktion aufrufen, um DMA-Übertragungen, die in einem DMA-Kanal ausgeführt werden, vorübergehend auszusetzen.

Der DMA-Anbieter schließt die Übertragung des aktuellen DMA-Deskriptors ab, bevor er von ProviderSuspendDma zurückgegeben wird. Wenn der Abschluss status Berichterstellung aktiviert ist, schreibt die DMA-Engine den NetDmaTransferStatusSuspend-status in die Adresse, die in den Membern CompletionVirtualAddress und CompletionPhysicalAddress in angegeben ist. NET_DMA_CHANNEL_PARAMETERS Struktur.

Während die DMA-Übertragungen angehalten werden, kann die NetDMA-Schnittstelle die verknüpfte DMA-Deskriptorliste ändern (z. B. zum Einfügen oder Löschen von Deskriptoren).

Die NetDMA-Schnittstelle ruft die ProviderResumeDma-Funktion auf, um DMA-Vorgänge fortzusetzen, die durch Aufrufen von ProviderSuspendDma angehalten wurden.

NetDMA ruft ProviderSuspendDma 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

ProviderResumeDma