DXGKDDI_QUERYDIRTYBITDATA callback function (d3dkmddi.h)
Dxgkrnl calls DxgkDdiQueryDirtyBitData to request a copy of the dirty bitplane data from the kernel-mode display miniport driver (KMD).
Syntax
DXGKDDI_QUERYDIRTYBITDATA DxgkddiQuerydirtybitdata;
NTSTATUS DxgkddiQuerydirtybitdata(
IN_CONST_HANDLE hAdapter,
INOUT_PDXGKARG_QUERYDIRTYBITDATA pArgs
)
{...}
Parameters
hAdapter
[in] A handle to a context block associated with a display adapter. KMD previously provided this handle to Dxgkrnl in the MiniportDeviceContext output parameter of the DxgiDdiAddDevice function.
pArgs
[in/out] A pointer to a DXGKARG_QUERYDIRTYBITDATA structure that contains input and output information for the query.
Return value
DxgkDdiQueryDirtyBitData returns STATUS_SUCCESS if the query was successfully. Otherwise, it returns an appropriate NTSTATUS error code.
Remarks
The function provides the memory basis and potential subrange identifiers for the requested dirty information. KMD must write the resulting data to the output buffer. DxgkDdiQueryDirtyBitData allows either querying all ranges of the memory basis or a single one.
When memory is readily available, Dxgkrnl will try to accelerate this operation using a single call to query all needed data at once. However, under low memory conditions, forward progress using a smaller fixed sized buffer might be required, which is only a smaller subset of the memory basis being tracked from a prior call to DdiStartDirtyTracking. The requested dirty bitplane range will never exceed an actively tracked dirty range.
For more information, see Dirty bit tracking.
Requirements
Requirement | Value |
---|---|
Minimum supported client | Windows 11, version 24H2 (WDDM 3.2) |
Header | d3dkmddi.h |
IRQL | PASSIVE_LEVEL |