Поделиться через


функция обратного вызова DXGKDDI_UPDATEMONITOREDVALUES (d3dkmddi.h)

Dxgkrnl вызывает вызовы DxgkDdiUpdateMonitoredValues, чтобы указать драйверу отображения в режиме ядра (KMD) обновить пакет отслеживаемых значений.

Синтаксис

DXGKDDI_UPDATEMONITOREDVALUES DxgkddiUpdatemonitoredvalues;

NTSTATUS DxgkddiUpdatemonitoredvalues(
  IN_CONST_PDXGKARG_UPDATEMONITOREDVALUES pUpdateMonitoredValues
)
{...}

Параметры

pUpdateMonitoredValues

[in] Указатель на структуру DXGKARG_UPDATEMONITOREDVALUES, содержащую отслеживаемые значения для обновления.

Возвращаемое значение

DxgkDdiUpdateMonitoredValues возвращает STATUS_SUCCESS, если KMD удалось успешно обновить пакет отслеживаемых значений. В противном случае возвращается соответствующий код ошибки NTSTATUS.

Замечания

DxgkDdiUpdateMonitoredValues выполняется на уровне прерывания устройства и, таким образом, синхронизирован с отслеживаемой процедурой службы прерываний с отслеживанием забора ( ISR).

Реализация KMD DxgkDdiUpdateMonitoredValues должна гарантировать, что CurrentValue считывается любым ядром процессора после возврата вызова обработчиком контекста GPU после наблюдения за новым MonitoredValue.

DxgkDdiUpdateMonitoredValues будет записывать значения UpdatedValueArra y в расположение, указанное MonitoredValueGpuVa при выполнении контракта синхронизации.

ОС гарантирует, что указатель MonitoredValueKernelCpuVa действителен в течение этого вызова DDI, а не до или после него. Таким образом, KMD никогда не должен кэшировать этот указатель для использования в другом месте.

Дополнительные сведения о собственных ограждениях GPU см. в разделе Объекты забора собственного GPU.

Требования

Требование Ценность
минимальные поддерживаемые клиентские Windows 11 версии 24H2
заголовка d3dkmddi.h
IRQL PROFILE_LEVEL-1

См. также

DXGKARG_UPDATEMONITOREDVALUES