DXGKDDI_CREATEDOORBELL回调函数 (d3dkmddi.h)

重要

某些信息与预发行产品有关,该产品在商业发布之前可能会进行大幅修改。 Microsoft对此处提供的信息不作任何明示或暗示的保证。

OS 调用 KMD 的 DxgkDdiCreateDoorbell 回调函数,为硬件队列创建门铃。

语法

DXGKDDI_CREATEDOORBELL DxgkddiCreatedoorbell;

NTSTATUS DxgkddiCreatedoorbell(
  INOUT_PDXGKARG_CREATEDOORBELL pArgs
)
{...}

参数

pArgs

[in/out]指向描述门铃的 DXGKARG_CREATEDOORBELL 结构的指针。

返回值

DxgkDdiCreateDoorbell 如果 KMD 能够成功为指定的硬件队列创建其门铃对象,UMD 可以使用此门铃提交工作,则返回STATUS_SUCCESS。 否则,它将返回适当的 NTSTATUS 错误代码。 如果 KMD 返回任何故障代码,UMD 无法使用门铃提交工作。

言论

当 UMD 调用 D3DKMTCreateDoorbell 为硬件队列创建门铃时,OS 会发出相应的 DxgkDdiCreateDoorbell 调用 KMD,以便 KMD 可以初始化其门铃结构。

KMD 的 DxgkDdiCreateDoorbell 函数只能创建和初始化其门铃数据结构。 它不应将物理门铃位置分配给此门铃对象,因为该位置是在后续调用 dxgkDdiConnectDoorbell期间完成的。 这种延迟分配可确保在硬件队列和门铃创建过程中不会用到物理门铃,只会浪费在 UMD 永远不会向其提交命令或稍后开始提交命令时浪费。 通过这种方式,仅当实际需要时才使用物理门铃。

有关详细信息,请参阅 用户模式工作提交

要求

要求 价值
最低支持的客户端 Windows 11 版本 24H2 (WDDM 3.2)
标头 d3dkmddi.h
IRQL PASSIVE_LEVEL

另请参阅

DXGKARG_CREATEDOORBELL

D3DKMTCreateDoorbell

DxgkDdiConnectDoorbell

DxgkDdiDestroyDoorbell