Condividi tramite


DMA_CHANNELS_CPU_AFFINITY_HANDLER funzione di callback (netdma.h)

Nota L'interfaccia NetDMA non è supportata

in Windows 8 e versioni successive.

 
La funzione ProviderSetDmaChannelCpuAffinity imposta le affinità CPU per i canali DMA associati a un provider DMA.

Sintassi

DMA_CHANNELS_CPU_AFFINITY_HANDLER DmaChannelsCpuAffinityHandler;

NTSTATUS DmaChannelsCpuAffinityHandler(
  [in] PVOID ProviderContext,
  [in] PNET_DMA_CHANNEL_CPU_AFFINITY CpuAffinityArray,
  [in] ULONG CpuAffinityArraySize
)
{...}

Parametri

[in] ProviderContext

Puntatore che identifica l'area di contesto di un provider DMA. Il driver del provider DMA ha passato questo puntatore a NetDMA in una chiamata al funzione NetDmaRegisterProvider.

[in] CpuAffinityArray

Puntatore a una matrice di NET_DMA_CHANNEL_CPU_AFFINITY strutture che specificano le affinità CPU per i canali DMA associati al provider DMA.

[in] CpuAffinityArraySize

Lunghezza, in byte, del buffer in CpuAffinityArray .

Valore restituito

ProviderSetDmaChannelCpuAffinity restituisce uno dei valori di stato seguenti:

Codice restituito Descrizione
STATUS_SUCCESS
Operazione completata correttamente.
STATUS_RESOURCES
L'operazione non è riuscita a causa di risorse insufficienti.
STATUS_UNSUCCESSFUL
L'operazione non è riuscita per motivi non specificati.

Osservazioni

L'interfaccia NetDMA chiama un driver del provider DMA ProviderSetDmaChannelCpuAffinity funzione per specificare le affinità CPU dei canali DMA di un provider DMA. NetDMA chiama ProviderSetDmaChannelCpuAffinity nel contesto di funzione NetDmaRegisterProvider.

Poiché il numero effettivo di canali DMA non è noto prima dell'avvio di un provider DMA, l'interfaccia NetDMA specifica le affinità CPU per il numero massimo di canali. Il provider DMA fornisce il numero massimo di canali nel MaxDmaChannelCount membro del NET_DMA_PROVIDER_CHARACTERISTICS struttura passata alla funzione netDmaRegisterProvider.

Nei computer che non supportano le piattaforme MSI-X, è possibile specificare le affinità cpu per i controller di dominio di interrupt, ma non per gli interrupt. In questo caso, l'interfaccia NetDMA specifica un elenco di possibili CPU per l'interrupt DPC nel ProcessorAffinityMask membro del NET_DMA_CHANNEL_PARAMETERS struttura.

Nei computer che supportano MSI-X, il driver del provider DMA può specificare affinità di interruzione durante la gestione di IRP_MN_FILTER_RESOURCE_REQUIREMENTS IRP.

NetDMA chiama ProviderSetDmaChannelCpuAffinity in IRQL = PASSIVE_LEVEL.

Fabbisogno

Requisito Valore
client minimo supportato Supportato per i driver NetDMA 1.0 in Windows Vista.
piattaforma di destinazione Finestre
intestazione netdma.h (include Netdma.h)
IRQL PASSIVE_LEVEL

Vedere anche

IRP_MN_FILTER_RESOURCE_REQUIREMENTS

NET_DMA_CHANNEL_CPU_AFFINITY

NET_DMA_CHANNEL_PARAMETERS

NET_DMA_PROVIDER_CHARACTERISTICS

NetDmaRegisterProvider