DXGKDDI_DISCONNECTDOORBELL função de retorno de chamada (d3dkmddi.h)
Importante
Algumas informações estão relacionadas a um produto de pré-lançamento que pode ser substancialmente modificado antes de ser lançado comercialmente. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
A função DxgkDdiDisconnectDoorbell desconecta uma campainha conectada anteriormente de uma fila de hardware.
Sintaxe
DXGKDDI_DISCONNECTDOORBELL DxgkddiDisconnectdoorbell;
NTSTATUS DxgkddiDisconnectdoorbell(
INOUT_PDXGKARG_DISCONNECTDOORBELL pArgs
)
{...}
Parâmetros
pArgs
[entrada/saída] Ponteiro para uma estrutura DXGKARG_DISCONNECTDOORBELL que descreve a campainha a ser desconectada.
Retornar valor
DxgkDdiDisconnectDoorbell deve ter êxito e retornar STATUS_SUCCESS.
Comentários
O sistema operacional chama DxgkDdiDisconnectDoorbell para desmarcar o local da campainha física atribuído a essa campainha. O KMD deve desconectar a fila de hardware, o endereço físico e o mecanismo da campainha, etc. O local da campainha física pode ser atribuído a algum outro objeto de campainha lógica.
O KMD não deve destruir nem liberar outros objetos associados ao hDoorbell porque o objeto doorbell não está sendo destruído e pode ser reconectado em um ponto posterior.
Ao retornar dessa chamada DDI, Dxgkrnl executa as seguintes etapas para desconectar a campainha:
- Gira o modo de usuário DoorbellCpuVirtualAddress para uma página fictícia para que o UMD não possa mais gravar no local da campainha física.
- Grava D3DDDI_DOORBELL_STATUS_DISCONNECTED_RETRY em DoorbellStatusCpuVirtualAddress para que a UMD saiba que a campainha está desconectada.
Para obter mais informações, consulte Envio de trabalho no modo de usuário.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Windows 11, versão 24H2 (WDDM 3.2) |
Cabeçalho | d3dkmddi.h |
IRQL | PASSIVE_LEVEL |