DXGKDDI_CREATEDOORBELL 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.
O sistema operacional chama a função de retorno de chamada DxgkDdiCreateDoorbell do KMD para criar uma campainha para uma fila de hardware.
Sintaxe
DXGKDDI_CREATEDOORBELL DxgkddiCreatedoorbell;
NTSTATUS DxgkddiCreatedoorbell(
INOUT_PDXGKARG_CREATEDOORBELL pArgs
)
{...}
Parâmetros
pArgs
[entrada/saída] Ponteiro para uma estrutura DXGKARG_CREATEDOORBELL que descreve a campainha.
Retornar valor
DxgkDdiCreateDoorbell retornará STATUS_SUCCESS se o KMD tiver sido capaz de criar com êxito seu objeto de campainha para a fila de hardware especificada, e a UMD poderá usar essa campainha para envio de trabalho. Caso contrário, ele retornará um código de erro NTSTATUS apropriado. A UMD não poderá usar a campainha para envio de trabalho se o KMD retornar qualquer código de falha.
Comentários
Quando UMD chama D3DKMTCreateDoorbell para criar uma campainha para uma fila de hardware, o sistema operacional faz uma chamada DxgkDdiCreateDoorbell correspondente para KMD para que o KMD possa inicializar suas estruturas de campainha.
A função DxgkDdiCreateDoorbell do KMD só deve criar e inicializar suas estruturas de dados de campainha. Ele ainda não deve atribuir um local de campainha física a esse objeto de campainha, pois isso é feito durante uma chamada subsequente para DxgkDdiConnectDoorbell. Essa atribuição lenta garante que uma campainha física não seja usada durante a criação da fila de hardware e da campainha, apenas para ser desperdiçada caso a UMD nunca envie comandos a ela ou comece a enviar comandos posteriormente. Dessa forma, as campainhas físicas são usadas somente quando realmente necessárias.
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 |