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 |