Función D3DKMTConnectDoorbell (d3dkmthk.h)

Importante

Parte de la información se relaciona con un producto de versión preliminar que puede modificarse sustancialmente antes de su lanzamiento comercial. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.

D3DKMTConnectDoorbell conecta (o vuelve a conectar) un timbre de puerta creado anteriormente a una cola de hardware.

Sintaxis

NTSTATUS D3DKMTConnectDoorbell(
  D3DKMT_CONNECT_DOORBELL *unnamedParam1
);

Parámetros

unnamedParam1

[in] Puntero a una estructura *D3DKMT_CONNECT_DOORBELL* que describe el timbre para conectarse.

Valor devuelto

D3DKMTConnectDoorbell devuelve STATUS_SUCCESS cuando el sistema operativo conecta correctamente el timbre de puerta a la cola de hardware y UMD puede usar este timbre para el envío de trabajo. Normalmente, esta llamada no debería producir un error; Sin embargo, un código de error provendría de los tipos perdidos o detenidos de GPU de escenarios irrecuperables.

Comentarios

Cada vez que el UMD envía un nuevo trabajo a la cola de hardware y llama al timbre, debe leer doorbellStatusCPUVirtualAddress para comprobar si el timbre de puerta se realizó correctamente. En caso de error, UMD debe llamar a D3DKMTConnectDoorbell para volver a conectar el timbre y, a continuación, intentar el envío de nuevo.

Un timbre puede desconectarse por varias razones:

  • Cuando se crea un timbre, el sistema operativo lo inicializa en un estado "desconectado" y solo lo conecta cuando UMD llama a D3DKMTConnectDoorbell por primera vez.
  • El timbre fue "victimizado" en hardware que admite el modelo de timbre dedicado. Es decir, el timbre físico de esta cola de hardware se asignó a otra cola de hardware. Es probable que esta reasignación se deba a que hay más colas de hardware creadas en la GPU que los timbres físicos.
  • El timbre se desconectaba como parte de la suspensión de la cola de hardware o de apagar la GPU.

Cuando UMD llama a D3DKMTConnectDoorbell para conectar el timbre de puerta asignado a una cola de hardware, el sistema operativo realiza una llamada de DxgkDdiConnectDoorbell correspondiente a KMD, de modo que el KMD pueda encontrar un timbre físico, asignarlo a esta cola de hardware y realizar las conexiones necesarias entre la cola de hardware, el timbre, el programador de GPU, etc.

Para obtener más información, consulte Envío de trabajo en modo de usuario.

Requisitos

Requisito Value
Cliente mínimo compatible Windows 11, versión 24H2 (WDDM 3.2)
Encabezado d3dkmthk.h

Consulte también

D3DKMT_CONNECT_DOORBELL

D3DKMTCreateDoorbell

DxgkDdiConnectDoorbell