DXGKDDI_DISCONNECTDOORBELL función de devolución de llamada (d3dkmddi.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í.
La función DxgkDdiDisconnectDoorbell desconecta un timbre de puerta conectado previamente de una cola de hardware.
Sintaxis
DXGKDDI_DISCONNECTDOORBELL DxgkddiDisconnectdoorbell;
NTSTATUS DxgkddiDisconnectdoorbell(
INOUT_PDXGKARG_DISCONNECTDOORBELL pArgs
)
{...}
Parámetros
pArgs
[in/out] Puntero a una estructura de DXGKARG_DISCONNECTDOORBELL que describe el timbre para desconectar.
Valor devuelto
DxgkDdiDisconnectDoorbell debe realizarse correctamente y devolver STATUS_SUCCESS.
Comentarios
El sistema operativo llama a DxgkDdiDisconnectDoorbell para desasignar la ubicación física del timbre asignado a este timbre. KMD debe desconectar la cola de hardware, la dirección física del timbre de puerta y el motor, etc. La ubicación del timbre físico se puede asignar a algún otro objeto de timbre lógico.
KMD no debe destruir ni liberar ningún otro objeto asociado a hDoorbell porque el objeto de timbre no se está destruyendo y se puede volver a conectar en un momento posterior.
Al volver desde esta llamada DDI, Dxgkrnl realiza los pasos siguientes para desconectar el timbre de puerta:
- Gira el modo de usuario DoorbellCpuVirtualAddress en una página fictica para que UMD ya no pueda escribir en la ubicación física del timbre.
- Escribe D3DDDI_DOORBELL_STATUS_DISCONNECTED_RETRY en DoorbellStatusCpuVirtualAddress para que UMD sepa que el timbre está desconectado.
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 | d3dkmddi.h |
IRQL | PASSIVE_LEVEL |