Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
in Windows 8 und höher.
Syntax
DMA_CHANNELS_CPU_AFFINITY_HANDLER DmaChannelsCpuAffinityHandler;
NTSTATUS DmaChannelsCpuAffinityHandler(
[in] PVOID ProviderContext,
[in] PNET_DMA_CHANNEL_CPU_AFFINITY CpuAffinityArray,
[in] ULONG CpuAffinityArraySize
)
{...}
Parameter
[in] ProviderContext
Ein Zeiger, der den Kontextbereich eines DMA-Anbieters identifiziert. Der DMA-Anbietertreiber hat diesen Zeiger in einem Aufruf an NetDMA übergeben. NetDmaRegisterProvider Funktion.
[in] CpuAffinityArray
Ein Zeiger auf ein Array von NET_DMA_CHANNEL_CPU_AFFINITY Strukturen, die die CPU-Affinitäten für die DMA-Kanäle angeben, die dem DMA-Anbieter zugeordnet sind.
[in] CpuAffinityArraySize
Die Länge des Puffers in Bytes bei CpuAffinityArray .
Rückgabewert
ProviderSetDmaChannelCpuAffinity gibt einen der folgenden Statuswerte zurück:
| Rückgabecode | Beschreibung |
|---|---|
|
Der Vorgang wurde erfolgreich abgeschlossen. |
|
Fehler beim Vorgang aufgrund unzureichender Ressourcen. |
|
Der Vorgang ist aus nicht angegebenen Gründen fehlgeschlagen. |
Bemerkungen
Die NetDMA-Schnittstelle ruft die ProviderSetDmaChannelCpuAffinity- Funktion eines DMA-Anbietertreibers auf, um die CPU-Affinitäten der DMA-Kanäle eines DMA-Anbieters anzugeben. NetDMA ruft ProviderSetDmaChannelCpuAffinity- im Kontext des NetDmaRegisterProvider Funktion.
Da die tatsächliche Anzahl der DMA-Kanäle nicht bekannt ist, bevor ein DMA-Anbieter gestartet wird, gibt die NetDMA-Schnittstelle die CPU-Affinität für die maximale Anzahl von Kanälen an. Der DMA-Anbieter stellt die maximale Anzahl von Kanälen im MaxDmaChannelCount Mitglied des NET_DMA_PROVIDER_CHARACTERISTICS Struktur, die sie an die NetDmaRegisterProvider-Funktion übergibt.
Auf Computern, die MSI-X Plattformen nicht unterstützen, können CPU-Affinitäten für die Interrupt-DPCs angegeben werden, aber nicht für die Interrupts. In diesem Fall gibt die NetDMA-Schnittstelle eine Liste möglicher CPUs für den Interrupt-DPC im ProcessorAffinityMask Member des NET_DMA_CHANNEL_PARAMETERS Struktur.
Auf Computern, die MSI-X unterstützen, kann der DMA-Anbietertreiber unterbrechungsaffine Affinität angeben, während die Verarbeitung der IRP_MN_FILTER_RESOURCE_REQUIREMENTS IRP.
NetDMA ruft ProviderSetDmaChannelCpuAffinity bei IRQL = PASSIVE_LEVEL auf.
Anforderungen
| Anforderung | Wert |
|---|---|
| mindestens unterstützte Client- | Unterstützt für NetDMA 1.0-Treiber in Windows Vista. |
| Zielplattform- | Fenster |
| Header- | netdma.h (enthalten Netdma.h) |
| IRQL- | PASSIVE_LEVEL |