DXGKDDI_UPDATEMONITOREDVALUES callback function (d3dkmddi.h)
Dxgkrnl calls DxgkDdiUpdateMonitoredValues to instruct the kernel-mode display driver (KMD) to update a batch of monitored values.
Syntax
DXGKDDI_UPDATEMONITOREDVALUES DxgkddiUpdatemonitoredvalues;
NTSTATUS DxgkddiUpdatemonitoredvalues(
IN_CONST_PDXGKARG_UPDATEMONITOREDVALUES pUpdateMonitoredValues
)
{...}
Parameters
pUpdateMonitoredValues
[in] Pointer to a DXGKARG_UPDATEMONITOREDVALUES structure that contains the monitored values to update.
Return value
DxgkDdiUpdateMonitoredValues returns STATUS_SUCCESS if KMD was able to successfully update the batch of monitored values. Otherwise, it returns an appropriate NTSTATUS error code.
Remarks
DxgkDdiUpdateMonitoredValues executes at the device interrupt level and is thus synchronized with the monitored fence signaled interrupt service routine (ISR).
A KMD's DxgkDdiUpdateMonitoredValues implementation must guarantee that the CurrentValue read by any processor core after the call returns was written by the GPU context management processor after having observed the new MonitoredValue.
DxgkDdiUpdateMonitoredValues is expected to write the UpdatedValueArray values to the location specified by MonitoredValueGpuVa while honoring the synchronization contract.
The OS only guarantees that the MonitoredValueKernelCpuVa pointer is valid for the duration of this DDI call, and not before or after it. Hence, KMD must never cache this pointer for use it elsewhere.
For more information about native GPU fences, see Native GPU fence objects.
Requirements
Requirement | Value |
---|---|
Minimum supported client | Windows 11, version 24H2 |
Header | d3dkmddi.h |
IRQL | PROFILE_LEVEL-1 |