DXGKDDI_STARTDIRTYTRACKING回调函数 (d3dkmddi.h)

KMD 的 DxgkDdiStartDirtyTracking 函数可在指定段和给定的地址范围内启用脏位跟踪。

语法

DXGKDDI_STARTDIRTYTRACKING DxgkddiStartdirtytracking;

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

参数

hAdapter

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

hMemoryBasis

[in]要开始跟踪脏作的内存基数的句柄。 KMD 在上一次调用 dxgkDdiCreateMemoryBasis中创建此句柄。

返回值

DxgkDdiStartDirtyTracking 成功后返回STATUS_SUCCESS。 否则,它将返回适当的 NTSTATUS 代码。

言论

驱动程序只需确保为指定的内存基础启用脏跟踪。 但是,只要遵守所有未完成的请求,就能够以更粗糙的粒度(例如,对整个适配器或段启用脏跟踪)执行此作。

Dxgkrnl 可能会同时在这些段内的多个段或范围内启用脏页跟踪。

启用脏跟踪后,Dxgkrnl 需要将脏位平面初始化为所有零(所有未修改的页面)。

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

要求

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

另请参阅

DxgkDdiCreateMemoryBasis

DxgkDdiStopDirtyTracking