função de retorno de chamada DMA_CHANNELS_CPU_AFFINITY_HANDLER (netdma.h)
em Windows 8 e posteriores.
Sintaxe
DMA_CHANNELS_CPU_AFFINITY_HANDLER DmaChannelsCpuAffinityHandler;
NTSTATUS DmaChannelsCpuAffinityHandler(
[in] PVOID ProviderContext,
[in] PNET_DMA_CHANNEL_CPU_AFFINITY CpuAffinityArray,
[in] ULONG CpuAffinityArraySize
)
{...}
Parâmetros
[in] ProviderContext
Um ponteiro que identifica a área de contexto de um provedor de DMA. O driver do provedor de DMA passou esse ponteiro para o NetDMA em uma chamada para o Função NetDmaRegisterProvider .
[in] CpuAffinityArray
Um ponteiro para uma matriz de NET_DMA_CHANNEL_CPU_AFFINITY estruturas que especificam as afinidades de CPU para os canais de DMA associados ao provedor de DMA.
[in] CpuAffinityArraySize
O comprimento, em bytes, do buffer em CpuAffinityArray .
Retornar valor
ProviderSetDmaChannelCpuAffinity retorna um dos seguintes valores de status:
Código de retorno | Descrição |
---|---|
|
A operação foi concluída com sucesso. |
|
A operação falhou devido a recursos insuficientes. |
|
A operação falhou por motivos não especificados. |
Comentários
A interface NetDMA chama a função ProviderSetDmaChannelCpuAffinity de um driver de provedor de DMA para especificar as afinidades de CPU dos canais de DMA de um provedor de DMA. O NetDMA chama ProviderSetDmaChannelCpuAffinity enquanto estiver no contexto do Função NetDmaRegisterProvider .
Como o número real de canais DMA não é conhecido antes de um provedor de DMA ser iniciado, a interface NetDMA especifica as afinidades de CPU para o número máximo de canais. O provedor de DMA fornece o número máximo de canais no membro MaxDmaChannelCount do NET_DMA_PROVIDER_CHARACTERISTICS estrutura que ela passa para a função NetDmaRegisterProvider .
Em computadores que não dão suporte a plataformas MSI-X, as afinidades de CPU podem ser especificadas para os DPCs de interrupção, mas não para as interrupções. Nesse caso, a interface NetDMA especifica uma lista de possíveis CPUs para o DPC de interrupção no membro ProcessorAffinityMask do NET_DMA_CHANNEL_PARAMETERS estrutura.
Em computadores que dão suporte a MSI-X, o driver do provedor de DMA pode especificar afinidades de interrupção durante a manipulação do IRP_MN_FILTER_RESOURCE_REQUIREMENTS IRP.
O NetDMA chama ProviderSetDmaChannelCpuAffinity em IRQL = PASSIVE_LEVEL.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Com suporte para drivers NetDMA 1.0 no Windows Vista. |
Plataforma de Destino | Windows |
Cabeçalho | netdma.h (inclua Netdma.h) |
IRQL | PASSIVE_LEVEL |