DMA_CHANNELS_CPU_AFFINITY_HANDLER función de devolución de llamada (netdma.h)
en Windows 8 y versiones posteriores.
Sintaxis
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
Puntero que identifica el área de contexto de un proveedor DMA. El controlador del proveedor DMA pasó este puntero a NetDMA en una llamada a . función NetDmaRegisterProvider.
[in] CpuAffinityArray
Puntero a una matriz de NET_DMA_CHANNEL_CPU_AFFINITY estructuras que especifican las afinidades de CPU para los canales DMA asociados al proveedor DMA.
[in] CpuAffinityArraySize
Longitud, en bytes, del búfer en CpuAffinityArray .
Valor devuelto
ProviderSetDmaChannelCpuAffinity devuelve uno de los siguientes valores de estado:
Código devuelto | Descripción |
---|---|
|
La operación se completó correctamente. |
|
Error en la operación debido a recursos insuficientes. |
|
Error en la operación por motivos no especificados. |
Observaciones
La interfaz NetDMA llama a la función ProviderSetDmaChannelCpuAffin ity de un controlador DMA para especificar las afinidades de CPU de los canales DMA del proveedor DMA. NetDMA llama a ProviderSetDmaChannelCpuAffinity en el contexto de función NetDmaRegisterProvider.
Dado que el número real de canales DMA no se conoce antes de que se inicie un proveedor DMA, la interfaz NetDMA especifica las afinidades de CPU para el número máximo de canales. El proveedor DMA proporciona el número máximo de canales del miembro MaxDmaChannelCount del NET_DMA_PROVIDER_CHARACTERISTICS estructura que pasa a la función NetDmaRegisterProvider.
En los equipos que no admiten plataformas MSI-X, se pueden especificar afinidades de CPU para los DPC de interrupción, pero no para las interrupciones. En este caso, la interfaz NetDMA especifica una lista de posibles CPU para el DPC de interrupción en el ProcessorAffinityMask miembro del NET_DMA_CHANNEL_PARAMETERS estructura.
En los equipos que admiten MSI-X, el controlador del proveedor DMA puede especificar afinidades de interrupción al controlar el IRP_MN_FILTER_RESOURCE_REQUIREMENTS IRP.
NetDMA llama a ProviderSetDmaChannelCpuAffinity en IRQL = PASSIVE_LEVEL.
Requisitos
Requisito | Valor |
---|---|
cliente mínimo admitido | Compatible con controladores netDMA 1.0 en Windows Vista. |
de la plataforma de destino de | Windows |
encabezado de | netdma.h (incluya Netdma.h) |
irQL | PASSIVE_LEVEL |