DXGKDDI_STOPDIRTYTRACKING回调函数 (d3dkmddi.h)

KMD 的 DxgkDdiStopDirtyTracking 函数禁用指定段和给定地址范围内的脏位跟踪。

语法

DXGKDDI_STOPDIRTYTRACKING DxgkddiStopdirtytracking;

NTSTATUS DxgkddiStopdirtytracking(
  IN_CONST_HANDLE hAdapter,
  IN_CONST_HANDLE hMemoryBasis
)
{...}

参数

hAdapter

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

hMemoryBasis

[in]停止跟踪脏操作的内存基础的句柄。 KMD 在上一次调用 DxgkDdiCreateMemoryBasis 时创建了此句柄。

返回值

DxgkDdiStopDirtyTracking 在成功后返回STATUS_SUCCESS。 否则,它将返回相应的 NTSTATUS 代码。

注解

驱动程序应确保仍遵循以前的所有启动请求。 例如,如果 KMD 一次仅支持对整个段进行脏跟踪,并且有两个未完成脏跟踪请求,则仅停止一个请求应为另一个请求启用脏位跟踪。

可以保证驱动程序调用 DxgkDdiStopDirtyTracking 将指定与相应的 DxgkDdiStartDirtyTracking 调用相同的内存范围。 例如,如果 Dxgkrnl 调用以在段 1 的 [0, 1GB) 开始脏跟踪,则最终会调用停止对段 1 中的段 [0, 1GB) 范围进行脏跟踪。

有关详细信息,请参阅 脏位跟踪

要求

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

另请参阅

DxgkDdiCreateMemoryBasis

DxgkDdiStartDirtyTracking