Compartir a través de


DMA_CHANNELS_CPU_AFFINITY_HANDLER función de devolución de llamada (netdma.h)

Nota No se admite la interfaz NetDMA

en Windows 8 y versiones posteriores.

 
La función ProviderSetDmaChannelCpuAffinity establece las afinidades de CPU para los canales DMA asociados a un proveedor DMA.

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
STATUS_SUCCESS
La operación se completó correctamente.
STATUS_RESOURCES
Error en la operación debido a recursos insuficientes.
STATUS_UNSUCCESSFUL
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

Consulte también

IRP_MN_FILTER_RESOURCE_REQUIREMENTS

NET_DMA_CHANNEL_CPU_AFFINITY

NET_DMA_CHANNEL_PARAMETERS

NET_DMA_PROVIDER_CHARACTERISTICS

NetDmaRegisterProvider