DXGKCB_SAVEMEMORYFORHOTUPDATE回调函数 (d3dkmddi.h)
内核模式显示微型端口驱动程序可以调用 DXGKCB_SAVEMEMORYFORHOTUPDATE 来保存适配器内存以支持驱动程序热更新。
语法
DXGKCB_SAVEMEMORYFORHOTUPDATE DxgkcbSavememoryforhotupdate;
NTSTATUS DxgkcbSavememoryforhotupdate(
[in] IN_CONST_HANDLE hAdapter,
[in] IN_CONST_PDXGKARGCB_SAVEMEMORYFORHOTUPDATE pArgs
)
{...}
参数
[in] hAdapter
传递给 DxgkDdiStartDevice的 DXGK 适配器的句柄。
[in] pArgs
指向包含此回调参数的 DXGKARGCB_SAVEMEMORYFORHOTUPDATE 结构的指针。
返回值
如果作成功,DXGKCB_SAVEMEMORYFORHOTUPDATE 返回STATUS_SUCCESS;否则,它将从 Ntstatus.h返回错误代码。
言论
每次调用 DXGKCB_SAVEMEMORYFORHOTUPDATE 都会保存物理内存页块,以及驱动程序希望与内存块关联的元数据(可选)。 还原页面后,驱动程序将为每个已保存的内存块以及元数据分别调用。
为方便起见,回调提供了 3 个选项来保存物理内存:
- 作为连续物理内存范围的数组(pDataMemoryRanges)
- 作为 MDL (pDataMdl)
- 作为虚拟内存缓冲区(pData)
指向数据的指针(pDataMemoryRanges、pDataMdl 或 pData) 的指针之一不得为 NULL。
DXGKCB_XXX 函数由 Dxgkrnl实现。 若要使用此回调函数,请设置 DXGKARGCB_SAVEMEMORYFORHOTUPDATE 的相应成员,然后通过 DXGKRNL_INTERFACE调用 DxgkCbSaveMemoryForHotUpdate。
要求
要求 | 价值 |
---|---|
最低支持的客户端 | Windows 10 版本 1903 (WDDM 2.6) |
标头 | d3dkmddi.h |
IRQL | PASSIVE_LEVEL |