DMA_CHANNELS_CPU_AFFINITY_HANDLER Rückruffunktion (netdma.h)
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 |