структура DXGKARGCB_NOTIFY_INTERRUPT_DATA (d3dkmddi.h)
Структура DXGKARGCB_NOTIFY_INTERRUPT_DATA содержит сведения о уведомлении о прерывании для функции обратного вызова DXGKCB_NOTIFY_INTERRUPT.
Синтаксис
typedef struct _DXGKARGCB_NOTIFY_INTERRUPT_DATA {
DXGK_INTERRUPT_TYPE InterruptType;
union {
struct {
UINT SubmissionFenceId;
UINT NodeOrdinal;
UINT EngineOrdinal;
} DmaCompleted;
struct {
UINT PreemptionFenceId;
UINT LastCompletedFenceId;
UINT NodeOrdinal;
UINT EngineOrdinal;
} DmaPreempted;
struct {
UINT FaultedFenceId;
NTSTATUS Status;
UINT NodeOrdinal;
UINT EngineOrdinal;
} DmaFaulted;
struct {
D3DDDI_VIDEO_PRESENT_TARGET_ID VidPnTargetId;
PHYSICAL_ADDRESS PhysicalAddress;
UINT PhysicalAdapterMask;
} CrtcVsync;
struct {
D3DDDI_VIDEO_PRESENT_TARGET_ID VidPnTargetId;
} DisplayOnlyVsync;
struct {
D3DDDI_VIDEO_PRESENT_TARGET_ID VidPnTargetId;
UINT PhysicalAdapterMask;
UINT MultiPlaneOverlayVsyncInfoCount;
DXGK_MULTIPLANE_OVERLAY_VSYNC_INFO *pMultiPlaneOverlayVsyncInfo;
} CrtcVsyncWithMultiPlaneOverlay;
DXGKARGCB_PRESENT_DISPLAYONLY_PROGRESS DisplayOnlyPresentProgress;
struct {
D3DDDI_VIDEO_PRESENT_TARGET_ID VidPnTargetId;
DXGK_MIRACAST_CHUNK_INFO ChunkInfo;
PVOID pPrivateDriverData;
UINT PrivateDataDriverSize;
NTSTATUS Status;
} MiracastEncodeChunkCompleted;
struct {
UINT FaultedFenceId;
UINT64 FaultedPrimitiveAPISequenceNumber;
DXGK_RENDER_PIPELINE_STAGE FaultedPipelineStage;
UINT FaultedBindTableEntry;
DXGK_PAGE_FAULT_FLAGS PageFaultFlags;
D3DGPU_VIRTUAL_ADDRESS FaultedVirtualAddress;
UINT NodeOrdinal;
UINT EngineOrdinal;
UINT PageTableLevel;
DXGK_FAULT_ERROR_CODE FaultErrorCode;
HANDLE FaultedProcessHandle;
} DmaPageFaulted;
struct {
D3DDDI_VIDEO_PRESENT_TARGET_ID VidPnTargetId;
UINT PhysicalAdapterMask;
UINT MultiPlaneOverlayVsyncInfoCount;
DXGK_MULTIPLANE_OVERLAY_VSYNC_INFO2 *pMultiPlaneOverlayVsyncInfo;
ULONGLONG GpuFrequency;
ULONGLONG GpuClockCounter;
} CrtcVsyncWithMultiPlaneOverlay2;
struct {
UINT NodeOrdinal;
UINT EngineOrdinal;
} MonitoredFenceSignaled;
struct {
UINT NodeOrdinal;
UINT EngineOrdinal;
UINT64 ContextSwitchFence;
} HwContextListSwitchCompleted;
struct {
UINT64 FaultedFenceId;
D3DGPU_VIRTUAL_ADDRESS FaultedVirtualAddress;
UINT64 FaultedPrimitiveAPISequenceNumber;
union {
HANDLE FaultedHwQueue;
HANDLE FaultedHwContext;
HANDLE FaultedProcessHandle;
};
UINT NodeOrdinal;
UINT EngineOrdinal;
DXGK_RENDER_PIPELINE_STAGE FaultedPipelineStage;
UINT FaultedBindTableEntry;
DXGK_PAGE_FAULT_FLAGS PageFaultFlags;
UINT PageTableLevel;
DXGK_FAULT_ERROR_CODE FaultErrorCode;
} HwQueuePageFaulted;
struct {
D3DDDI_VIDEO_PRESENT_TARGET_ID VidPnTargetId;
UINT NotificationID;
} PeriodicMonitoredFenceSignaled;
struct {
UINT NodeOrdinal;
UINT EngineOrdinal;
} SchedulingLogInterrupt;
struct {
UINT NodeOrdinal;
UINT EngineOrdinal;
} GpuEngineTimeout;
struct {
HANDLE hContext;
UINT64 ContextSuspendFence;
} SuspendContextCompleted;
struct {
D3DDDI_VIDEO_PRESENT_TARGET_ID VidPnTargetId;
UINT PhysicalAdapterMask;
UINT MultiPlaneOverlayVsyncInfoCount;
DXGK_MULTIPLANE_OVERLAY_VSYNC_INFO3 *pMultiPlaneOverlayVsyncInfo;
ULONGLONG GpuFrequency;
ULONGLONG GpuClockCounter;
} CrtcVsyncWithMultiPlaneOverlay3;
struct {
UINT NodeOrdinal;
UINT EngineOrdinal;
UINT SignaledNativeFenceCount;
HANDLE *pSignaledNativeFenceArray;
HANDLE hHWQueue;
} NativeFenceSignaled;
struct {
UINT NodeOrdinal;
UINT EngineOrdinal;
DXGK_ENGINE_STATE NewState;
} EngineStateChange;
struct {
UINT Reserved[16];
} Reserved;
};
DXGKCB_NOTIFY_INTERRUPT_DATA_FLAGS Flags;
} DXGKARGCB_NOTIFY_INTERRUPT_DATA;
Члены
InterruptType
Значение DXGK_INTERRUPT_TYPEтипа, указывающее тип прерывания драйвера минипорта отображения, уведомляет планировщик GPU о.
DmaCompleted
Структура, используемая при
DmaCompleted.SubmissionFenceId
Идентификатор забора буфера DMA завершенной команды. Этот идентификатор был назначен во время вызова функции DXGKDDI_SUBMITCOMMAND драйвера для последнего завершенного буфера DMA.
DmaCompleted.NodeOrdinal
Отсчитываемый от нуля индекс узла, который создает уведомление.
DmaCompleted.EngineOrdinal
Отсчитываемый от нуля индекс подсистемы в узле, который nodeOrdinal указывает, что создает уведомление. Для графических адаптеров, которые не являются частью ссылки, всегда следует задать для EngineOrdinal значение 0. Для графических адаптеров, входящих в связь, задайте EngineOrdinal индекс адаптера в ссылке, к которой принадлежит подсистема прерывания.
DmaPreempted
Структура, используемая при прерывания
DmaPreempted.PreemptionFenceId
Идентификатор отправки запроса предварительного применения.
DmaPreempted.LastCompletedFenceId
Идентификатор отправки последней завершенной команды перед началом.
DmaPreempted.NodeOrdinal
Отсчитываемый от нуля индекс узла, который создает уведомление.
DmaPreempted.EngineOrdinal
Отсчитываемый от нуля индекс подсистемы в узле, который nodeOrdinal указывает, что создает уведомление. Для графических адаптеров, которые не являются частью ссылки, всегда следует задать EngineOrdinal значение 0. Для графических адаптеров, входящих в связь, задайте EngineOrdinal индекс адаптера в ссылке, к которой принадлежит подсистема прерывания. Планировщик GPU определяет, что оборудование удаляло все команды между запросом предварительной отмены и отправкой, которая LastCompletedFenceId.
DmaFaulted
Структура, используемая при
DmaFaulted.FaultedFenceId
Идентификатор неисправной команды.
DmaFaulted.Status
Состояние неисправной команды.
DmaFaulted.NodeOrdinal
Отсчитываемый от нуля индекс узла, который создает уведомление.
DmaFaulted.EngineOrdinal
Отсчитываемый от нуля индекс подсистемы в узле, который nodeOrdinal указывает, что создает уведомление. Для графических адаптеров, которые не являются частью ссылки, всегда следует задать для EngineOrdinal значение 0. Для графических адаптеров, входящих в связь, задайте EngineOrdinal индекс адаптера в ссылке, к которой принадлежит подсистема прерывания.
CrtcVsync
Структура, используемая при прерывания
CrtcVsync.VidPnTargetId
Отсчитываемый от нуля идентификационный номер видео, который присутствует в пути к топологии VidPN. Это число представляет собой целевой объект, на котором выполняется вертикальная синхронизация.
CrtcVsync.PhysicalAddress
Физический адрес отображаемого буфера. Если мониторинг видимости отключен, операционная система по-прежнему ожидаетNULL физического адреса. Этот адрес должен быть задан на физический адрес, считывающийся конвейером пикселей, если видимость была включена.
CrtcVsync.PhysicalAdapterMask
Маска физического адаптера, в которой происходит вертикальная синхронизация. Если этот элемент содержит допустимое значение, драйвер также должен задать флаг ValidPhysicalAdapterMask бит-поле в элементе Flags.
DisplayOnlyVsync
Структура, используемая при Прерывания ТипаDXGK_INTERRUPT_DISPLAYONLY_VSYNC. Поддерживается начиная с Windows 8.
DisplayOnlyVsync.VidPnTargetId
Для драйвера, доступного только для отображения, отсчитываемый от нуля идентификационный номер целевого объекта видео, присутствующих в пути к топологии vidPN. Это число представляет собой целевой объект, на котором выполняется вертикальная синхронизация. Поддерживается начиная с Windows 8.
CrtcVsyncWithMultiPlaneOverlay
Структура, используемая при Прерывания ТипаDXGK_INTERRUPT_CRTC_VSYNC_WITH_MULTIPLANE_OVERLAY. Предоставляет уведомления VSync для отображения драйверов минипорта, поддерживающих многоплановые наложения. Поддерживается начиная с Windows 8.
CrtcVsyncWithMultiPlaneOverlay.VidPnTargetId
Отсчитываемый от нуля идентификационный номер видео, который присутствует в пути к топологии VidPN. Это число представляет собой целевой объект, на котором выполняется вертикальная синхронизация. Поддерживается начиная с Windows 8.
CrtcVsyncWithMultiPlaneOverlay.PhysicalAdapterMask
Маска физического адаптера, в которой происходит вертикальная синхронизация. Если этот элемент содержит допустимое значение, драйвер также должен задать флаг ValidPhysicalAdapterMask бит-поле в элементе Flags. Поддерживается начиная с Windows 8.
CrtcVsyncWithMultiPlaneOverlay.MultiPlaneOverlayVsyncInfoCount
Количество отображаемых плоскостей наложения. Поддерживается начиная с Windows 8.
CrtcVsyncWithMultiPlaneOverlay.pMultiPlaneOverlayVsyncInfo
Указатель на DXGK_MULTIPLANE_OVERLAY_VSYNC_INFO структуру, указывающую плоскость наложения для отображения во время интервала VSync. Поддерживается начиная с Windows 8.
DisplayOnlyPresentProgress
Структура DXGKARGCB_PRESENT_DISPLAYONLY_PROGRESS, которая обеспечивает ход выполнения текущей операции драйвера только для отображения в режиме ядра (KMDOD). Используется при Прерывания ТипаDXGK_INTERRUPT_DISPLAYONLY_PRESENT_PROGRESS. Поддерживается начиная с Windows 8.
MiracastEncodeChunkCompleted
Структура, используемая при
MiracastEncodeChunkCompleted.VidPnTargetId
Отсчитываемый от нуля идентификационный номер видео, который присутствует в пути к топологии VidPN. Это число представляет целевой объект для представления видео, в котором выполняется кодировка. Поддерживается начиная с Windows 8.1.
MiracastEncodeChunkCompleted.ChunkInfo
DXGK_MIRACAST_CHUNK_INFO кодировать структуру сведений блока, которую требуется сообщить драйверу мини-порта отображения. Поддерживается начиная с Windows 8.1.
MiracastEncodeChunkCompleted.pPrivateDriverData
Указатель на блок частных данных, описывающий этот блок кодирования. Поддерживается начиная с Windows 8.1.
MiracastEncodeChunkCompleted.PrivateDataDriverSize
Размер блока частных данных в pPrivateDriverData. Это значение не должно превышать значение MaxChunkPrivateDriverDataSize, которое драйвер сообщил в структуре DXGK_MIRACAST_CAPS. Поддерживается начиная с Windows 8.1.
MiracastEncodeChunkCompleted.Status
Значение типа NTSTATUS, указывающее, был ли блок кода успешно добавлен в очередь блоков. При успешном выполнении возвращается STATUS_SUCCESS. Если возвращается любое другое значение, блок не может быть добавлен в очередь, и все невыполненные фрагменты будут потеряны. Поддерживается начиная с Windows 8.1.
Ценность | Значение |
---|---|
STATUS_SUCCESS | Блок успешно добавлен в очередь. |
STATUS_INVALID_PARAMETER | Параметры были проверены и определены как неверные. |
STATUS_NO_MEMORY | Подпрограмма прерывания службы (ISR) закончилась из бесплатных блоков кодирования. |
DmaPageFaulted
Структура, используемая при Прерывания ТипаDXGK_INTERRUPT_DMA_PAGE_FAULTED. Поддерживается начиная с Windows 10.
DmaPageFaulted.FaultedFenceId
Идентификатор забора отправки неисправной команды.
Если не удалось определить неисправное ограждение, PageFaultFlags должны иметь DXGK_PAGE_FAULT_FENCE_INVALID битовый набор, а FaultedFenceId должно иметь значение 0. Поддерживается начиная с Windows 10.
DmaPageFaulted.FaultedPrimitiveAPISequenceNumber
Если запись забора рисования включена, это определяет операцию рисования, которая вызвала сбой страницы или DXGK_PRIMITIVE_API_SEQUENCE_NUMBER_UNKNOWN, если такая информация недоступна. Поддерживается начиная с Windows 10.
DmaPageFaulted.FaultedPipelineStage
Этап конвейера отрисовки, во время которого была создана ошибка, или DXGK_RENDER_PIPELINE_STAGE_UNKNOWN, если такая информация недоступна. Поддерживается начиная с Windows 10.
DmaPageFaulted.FaultedBindTableEntry
Индекс таблицы привязки для доступа к ресурсу во время сбоя или DXGK_BIND_TABLE_ENTRY_UNKNOWN, если такая информация недоступна. Поддерживается начиная с Windows 10.
DmaPageFaulted.PageFaultFlags
Флаги, описанные в перечислении DXGK_PAGE_FAULT_FLAGS, указывающие характер сбоя. Поддерживается начиная с Windows 10.
DmaPageFaulted.FaultedVirtualAddress
Виртуальный адрес GPU сбоя или D3DGPU_NULL, если ошибка имеет другую причину. В последнем случае поле FaultErrorCode следует использовать для описания ошибки GPU. Поддерживается начиная с Windows 10.
DmaPageFaulted.NodeOrdinal
Порядковый номер узла подсистемы, создающей уведомление. Поддерживается начиная с Windows 10.
DmaPageFaulted.EngineOrdinal
Порядковый номер обработчика, создающего уведомление. Поддерживается начиная с Windows 10.
DmaPageFaulted.PageTableLevel
Описывает уровень таблицы страницы, на котором была предпринята операция сбоя. Поддерживается начиная с Windows 10.
DmaPageFaulted.FaultErrorCode
Структура DXGK_FAULT_ERROR_CODE, описывающая ошибку. Поддерживается начиная с Windows 10.
DmaPageFaulted.FaultedProcessHandle
Обработчик процесса графического ядра DirectX для процесса, создающего ошибку страницы, или NULL, если не удается определить неисправный процесс. Поддерживается начиная с Windows 10.
CrtcVsyncWithMultiPlaneOverlay2
Структура, используемая при прерывания
CrtcVsyncWithMultiPlaneOverlay2.VidPnTargetId
Vsync с многоплановой наложением целевого идентификатора Vidpn. Поддерживается начиная с Windows 10 версии 1607.
CrtcVsyncWithMultiPlaneOverlay2.PhysicalAdapterMask
Маска физического адаптера, в которой происходит вертикальная синхронизация. Если этот элемент содержит допустимое значение, драйвер также должен задать флаг ValidPhysicalAdapterMask бит-поле в элементе Flags. Поддерживается начиная с Windows 10 версии 1607.
CrtcVsyncWithMultiPlaneOverlay2.MultiPlaneOverlayVsyncInfoCount
Количество отображаемых плоскостей наложения. Поддерживается начиная с Windows 10 версии 1607.
CrtcVsyncWithMultiPlaneOverlay2.pMultiPlaneOverlayVsyncInfo
Указатель на структуру DXGK_MULTIPLANE_OVERLAY_VSYNC_INFO2, указывающую сведения для каждого плоскости наложения, обновленного VSync. Поддерживается начиная с Windows 10 версии 1607.
CrtcVsyncWithMultiPlaneOverlay2.GpuFrequency
Частота счетчика часов GPU. Поддерживается начиная с Windows 10 версии 1607.
CrtcVsyncWithMultiPlaneOverlay2.GpuClockCounter
Счетчик часов GPU во время прерывания VSYNC. В сочетании с GpuFrequency это означает время прерывания VSYNC. Поддерживается начиная с Windows 10 версии 1607.
MonitoredFenceSignaled
Структура, используемая при прерывания
MonitoredFenceSignaled.NodeOrdinal
Порядковый номер узла обработчика, создающего уведомление. Поддерживается начиная с Windows 10 версии 1703.
MonitoredFenceSignaled.EngineOrdinal
Порядковый номер обработчика, создающего уведомление. Поддерживается начиная с Windows 10 версии 1703.
HwContextListSwitchCompleted
Структура, используемая при
HwContextListSwitchCompleted.NodeOrdinal
Порядковый номер узла обработчика, создающего уведомление. Поддерживается начиная с Windows 10 версии 1703.
HwContextListSwitchCompleted.EngineOrdinal
Порядковый номер обработчика, создающего уведомление. Поддерживается начиная с Windows 10 версии 1703.
HwContextListSwitchCompleted.ContextSwitchFence
Забор переключения контекста, используемый для выполнения этой операции переключения. Поддерживается начиная с Windows 10 версии 1703.
HwQueuePageFaulted
Структура, используемая при Прерывания ТипаDXGK_INTERRUPT_HWQUEUE_PAGE_FAULTED. Поддерживается начиная с Windows 10 версии 1703.
HwQueuePageFaulted.FaultedFenceId
Идентификатор забора очереди HW для неисправной команды. Если не удалось определить неисправный забор PageFaultFlags, должен быть установлен флаг DXGK_PAGE_FAULT_FENCE_INVALID. Поддерживается начиная с Windows 10 версии 1703.
HwQueuePageFaulted.FaultedVirtualAddress
Виртуальный адрес сбоя или 0, если ошибка имеет другую причину. В последнем случае поле FaultErrorCode должно использоваться для описания ошибки GPU. Поддерживается начиная с Windows 10 версии 1703.
HwQueuePageFaulted.FaultedPrimitiveAPISequenceNumber
Если запись забора рисования включена, определяет рисование, вызвавшее ошибку страницы, или DXGK_PRIMITIVE_API_SEQUENCE_NUMBER_UNKNOWN, если такая информация недоступна. Поддерживается начиная с Windows 10 версии 1703.
HwQueuePageFaulted.FaultedHwQueue
Если DXGK_PAGE_FAULT_FENCE_INVALID не задано, указывает дескриптор очереди HW, которая вызвала ошибку. Поддерживается начиная с Windows 10 версии 1703.
HwQueuePageFaulted.FaultedHwContext
Если заданы DXGK_PAGE_FAULT_FENCE_INVALID и DXGK_PAGE_FAULT_HW_CONTEXT_VALID, указывает дескриптор контекста HW, создающего ошибку. Поддерживается начиная с Windows 10 версии 1703.
HwQueuePageFaulted.FaultedProcessHandle
Wen DXGK_PAGE_FAULT_FENCE_INVALID и DXGK_PAGE_FAULT_PROCESS_HANDLE_VALID заданы, указывает дескриптор процесса, создающего ошибку. Поддерживается начиная с Windows 10 версии 1703.
HwQueuePageFaulted.NodeOrdinal
Порядковый номер узла обработчика, создающего уведомление. Поддерживается начиная с Windows 10 версии 1703.
HwQueuePageFaulted.EngineOrdinal
Порядковый номер обработчика, создающего уведомление. Поддерживается начиная с Windows 10 версии 1703.
HwQueuePageFaulted.FaultedPipelineStage
Этап конвейера отрисовки, в течение которого была создана ошибка, или DXGK_RENDER_PIPELINE_STAGE_UNKNOWN, если такая информация недоступна. Поддерживается начиная с Windows 10 версии 1703.
HwQueuePageFaulted.FaultedBindTableEntry
Индекс таблицы привязки доступа к ресурсу во время сбоя или DXGK_BIND_TABLE_ENTRY_UNKNOWN, если такая информация недоступна. Поддерживается начиная с Windows 10 версии 1703.
HwQueuePageFaulted.PageFaultFlags
Флаги, указывающие характер политики сбоя страницы и восстановления. Поддерживается начиная с Windows 10 версии 1703.
HwQueuePageFaulted.PageTableLevel
Описанный уровень таблицы страницы, на котором была предпринята попытка операции сбоя. Поддерживается начиная с Windows 10 версии 1703.
HwQueuePageFaulted.FaultErrorCode
Структура, содержащая код ошибки, описывающий ошибку. Поддерживается начиная с Windows 10 версии 1703.
PeriodicMonitoredFenceSignaled
Структура, используемая при прерывания
PeriodicMonitoredFenceSignaled.VidPnTargetId
Дисплей сигнализирует отслеживаемого забора. Поддерживается начиная с Windows 10 версии 1703.
PeriodicMonitoredFenceSignaled.NotificationID
Идентификатор уведомления, как несколько, может быть присоединен к одному VidPnSource. Поддерживается начиная с Windows 10 версии 1703.
SchedulingLogInterrupt
Структура, используемая при
SchedulingLogInterrupt.NodeOrdinal
Порядковый номер узла, который вызвал прерывание журнала планирования. Поддерживается начиная с Windows 10 версии 1803.
SchedulingLogInterrupt.EngineOrdinal
Порядковый номер обработчика, который вызвал прерывание журнала планирования. Поддерживается начиная с Windows 10 версии 1803.
GpuEngineTimeout
Структура, используемая при прерывания
GpuEngineTimeout.NodeOrdinal
Порядковый номер узла, который истек и требует сброса. Поддерживается начиная с Windows 10 версии 1803.
GpuEngineTimeout.EngineOrdinal
Порядковый номер двигателя, который истек и нуждается в сбросе. Поддерживается начиная с Windows 10 версии 1803.
SuspendContextCompleted
Структура, используемая при
SuspendContextCompleted.hContext
Контекст оборудования, для которому предназначено подтверждение приостановки. Поддерживается начиная с Windows 10 версии 1803.
SuspendContextCompleted.ContextSuspendFence
Контекст приостанавливает ограждение. Поддерживается начиная с Windows 10 версии 1803.
CrtcVsyncWithMultiPlaneOverlay3
Структура, используемая при прерывания
CrtcVsyncWithMultiPlaneOverlay3.VidPnTargetId
Vsync с многоплановой наложением целевого идентификатора Vidpn. Доступно начиная с Windows Server 2022 (WDDM 2.9).
CrtcVsyncWithMultiPlaneOverlay3.PhysicalAdapterMask
Маска физического адаптера, в которой происходит вертикальная синхронизация. Если этот элемент содержит допустимое значение, драйвер также должен задать флаг ValidPhysicalAdapterMask бит-поле в элементе Flags. Доступно начиная с Windows Server 2022 (WDDM 2.9).
CrtcVsyncWithMultiPlaneOverlay3.MultiPlaneOverlayVsyncInfoCount
Число структур DXGK_MULTIPLANE_OVERLAY_VSYNC_INFO3, на которые CrtcVsyncWithMultiPlaneOverlay3.pMultiPlaneOverlayVsyncInfo. Эти структуры описывают плоскости наложения, доступные для отображения. Доступно начиная с Windows Server 2022 (WDDM 2.9).
CrtcVsyncWithMultiPlaneOverlay3.pMultiPlaneOverlayVsyncInfo
Указатель на массив DXGK_MULTIPLANE_OVERLAY_VSYNC_INFO3 структур, которые указывают сведения для каждого плоскости наложения, обновленного VSync. Дополнительные сведения см. в
CrtcVsyncWithMultiPlaneOverlay3.GpuFrequency
Частота счетчика часов GPU. Доступно начиная с Windows Server 2022 (WDDM 2.9).
CrtcVsyncWithMultiPlaneOverlay3.GpuClockCounter
Счетчик часов GPU во время прерывания VSYNC. В сочетании с GpuFrequency это означает время прерывания VSYNC. Доступно начиная с Windows Server 2022 (WDDM 2.9).
NativeFenceSignaled
[in] Структура, используемая при прерывания
NativeFenceSignaled.NodeOrdinal
Порядковый номер узла подсистемы, создающей уведомление. Поддерживается начиная с Windows 11 версии 24H2 (WDDM 3.2).
NativeFenceSignaled.EngineOrdinal
Порядковый номер обработчика, создающего уведомление. Поддерживается начиная с Windows 11 версии 24H2 (WDDM 3.2).
NativeFenceSignaled.SignaledNativeFenceCount
Размер сигнального собственного массива ограждения, на который
NativeFenceSignaled.pSignaledNativeFenceArray
Массив, содержащий дескрипторы режима ядра ОС всех собственных ограждений, которые были сигнализованы и требуют разблокировки официантов. Если этот массив пуст, ОС пересканет все ожидающие собственные официанты забора вместо подмножества, указанного сигнальным собственным массивом ограждения. Dxgkrnl считывает это значение только в том случае, если DXGK_VIDSCHCAPS::OptimizedNativeFenceInterrupt имеет значение FALSE. Поддерживается начиная с Windows 11 версии 24H2 (WDDM 3.2).
NativeFenceSignaled.hHWQueue
Дескриптор KMD HWQueue, работающий на подсистеме, вызвавщей прерывание. Если этот дескриптор имеет значение NULL, Dxgkrnl повторно сканирует буфер журнала всех HWQueues на этом обработчике. Dxgkrnl считывает это значение только в том случае, если DXGK_VIDSCHCAPS::OptimizedNativeFenceInterrupt имеет значение TRUE. Поддерживается начиная с Windows 11 версии 24H2 (WDDM 3.2).
EngineStateChange
[in] Структура, используемая при прерывания
EngineStateChange.NodeOrdinal
Порядковый номер узла подсистемы, состояние которого изменилось. Доступно начиная с Windows 11 версии 24H2 (WDDM 3.2).
EngineStateChange.EngineOrdinal
Порядковый номер двигателя, состояние которого изменилось. Доступно начиная с Windows 11 версии 24H2 (WDDM 3.2).
EngineStateChange.NewState
Значение DXGK_ENGINE_STATE, указывающее новое состояние подсистемы. Доступно начиная с Windows 11 версии 24H2 (WDDM 3.2).
Reserved
Зарезервировано для дальнейшего использования.
Reserved.Reserved[16]
Массив 32-разрядных значений, зарезервированных для будущего использования.
Flags
Структура DXGKCB_NOTIFY_INTERRUPT_DATA_FLAGS, указывающая, предоставляет ли драйвер мини-порта отображение маску физического адаптера в вызове функции DxgkCbNotifyInterrupt.
Замечания
Мини-порт драйвер заполняет DXGKARGCB_NOTIFY_INTERRUPT_DATA, а затем использует обратный вызов DXGKCB_SYNCHRONIZE_EXECUTION для синхронизации с прерыванием. Параметр SynchronizeRoutine обратного вызова DXGKCB_SYNCHRONIZE_EXECUTION указывает на функцию, реализованную мини-портом, которая вызывается ОС при необходимости, а затем драйвер заполняет сведения о параметрах перед возвратом в ОС с помощью обратного вызова DXGKCB_NOTIFY_INTERRUPT. Затем ОС обрабатывает прерывание с помощью планировщика с помощью сведений в структуре DXGK_MULTIPLANE_OVERLAY_VSYNC_INFO2.
В зависимости от значения в элементе InterruptType драйвер минипорта должен задать соответствующий член объединения в этой структуре. Например, для конца забора буфера прямого доступа к памяти (DMA), соответствующего значению DXGK_INTERRUPT_DMA_COMPLETED в InterruptType, драйвер должен задать значение в элементе SubmissionFenceId члена DmaCompleted. Это значение должно быть идентификатором ограждения буфера DMA, который
Требования
Требование | Ценность |
---|---|
минимальные поддерживаемые клиентские | Windows Vista (WDDM 1.0) |
заголовка | d3dkmddi.h (include D3dkmddi.h) |
См. также
DXGK_MULTIPLANE_OVERLAY_VSYNC_INFO
DXGKCB_NOTIFY_INTERRUPT_DATA_FLAGS