DXGKDDI_RESETHWENGINE回调函数 (d3dkmddi.h)

需要重置 GPU 引擎时,Dxgkrnl 调用显示微型端口驱动程序的 (KMD 的) DxgkDdiResetHwEngine 函数。

语法

DXGKDDI_RESETHWENGINE DxgkddiResethwengine;

NTSTATUS DxgkddiResethwengine(
  IN_CONST_HANDLE hAdapter,
  INOUT_PDXGKARG_RESETHWENGINE pResetHwEngine
)
{...}

参数

hAdapter

[in]与显示适配器关联的上下文块的句柄。 KMD 以前在 DxgkDdiAddDevice 函数的 MiniportDeviceContext 输出参数中向 Dxgkrnl 提供了此句柄。

pResetHwEngine

[in/out]指向 DXGKARG_RESETHWENGINE 结构的指针,该结构包含用于重置硬件引擎的信息。

返回值

如果操作成功,DxgkDdiResetHwEngine 将返回STATUS_SUCCESS。 否则,它应返回相应的 NTSTATUS 错误代码。

注解

DxgkDdiResetHwEngine 实现应调用 DxgkCbInvalidateHwContext 回调,以通知操作系统受 GPU 引擎重置操作影响的所有正在运行的上下文。 操作系统将使这些上下文设备失效, (将它们设置为错误) ,并且不会执行将来的提交。

调用 DxgkDdiResetHwEngine 后,引擎尚未恢复,因此不允许提交未失效的上下文。 OS 需要重新启用来自此引擎的中断,并将其状态与重置 GPU 引擎同步。 之后,OS 将启用中断并调用 DxgkDdiResumeHwEngine,这会指示 GPU 引擎开始计划不受引擎重置影响的所有可运行上下文。

**DRIVER_INITIALIZATION_DATA ** 结构中注册此回调函数的实现。

要求

要求
最低受支持的客户端 Windows 10,版本 1703 (WDDM 2.2)
标头 d3dkmddi.h

另请参阅

DXGKARG_RESETHWENGINE

DxgkDdiResumeHwEngine