DXGK_BUILDPAGINGBUFFER_OPERATION enumeration (d3dkmddi.h)
DXGK_BUILDPAGINGBUFFER_OPERATION indicates the type of memory operation to perform.
Syntax
typedef enum _DXGK_BUILDPAGINGBUFFER_OPERATION {
DXGK_OPERATION_TRANSFER = 0,
DXGK_OPERATION_FILL = 1,
DXGK_OPERATION_DISCARD_CONTENT = 2,
DXGK_OPERATION_READ_PHYSICAL = 3,
DXGK_OPERATION_WRITE_PHYSICAL = 4,
DXGK_OPERATION_MAP_APERTURE_SEGMENT = 5,
DXGK_OPERATION_UNMAP_APERTURE_SEGMENT = 6,
DXGK_OPERATION_SPECIAL_LOCK_TRANSFER = 7,
DXGK_OPERATION_VIRTUAL_TRANSFER = 8,
DXGK_OPERATION_VIRTUAL_FILL = 9,
DXGK_OPERATION_INIT_CONTEXT_RESOURCE = 10,
DXGK_OPERATION_UPDATE_PAGE_TABLE = 11,
DXGK_OPERATION_FLUSH_TLB = 12,
DXGK_OPERATION_UPDATE_CONTEXT_ALLOCATION = 13,
DXGK_OPERATION_COPY_PAGE_TABLE_ENTRIES = 14,
DXGK_OPERATION_NOTIFY_RESIDENCY = 15,
DXGK_OPERATION_SIGNAL_MONITORED_FENCE = 16,
DXGK_OPERATION_MAP_APERTURE_SEGMENT2 = 17,
DXGK_OPERATION_NOTIFY_FENCE_RESIDENCY = 18,
DXGK_OPERATION_MAP_MMU = 19,
DXGK_OPERATION_UNMAP_MMU = 20,
DXGK_OPERATION_NOTIFY_RESIDENCY2 = 21,
DXGK_OPERATION_NOTIFY_ALLOC = 22
} DXGK_BUILDPAGINGBUFFER_OPERATION;
Constants
DXGK_OPERATION_TRANSFER Value: 0 Perform a transfer operation that moves the content of an allocation from one location to another. WDDMv1 only. |
DXGK_OPERATION_FILL Value: 1 Fill an allocation with a specified pattern. WDDMv1 only. |
DXGK_OPERATION_DISCARD_CONTENT Value: 2 Notifies the driver that an allocation is discarded from the allocation's current location in a memory segment (that is, the allocation is evicted and not copied back to system memory). WDDMv1 only. |
DXGK_OPERATION_READ_PHYSICAL Value: 3 Perform a read-physical operation that reads from a specified physical memory address. WDDMv1 only. |
DXGK_OPERATION_WRITE_PHYSICAL Value: 4 Perform a write-physical operation that writes to a specified physical memory address. WDDMv1 only. |
DXGK_OPERATION_MAP_APERTURE_SEGMENT Value: 5 Perform a map-aperture-segment operation that maps a memory descriptor list (MDL) into a range of an aperture segment. Common WDDMv1 and WDDMv2. |
DXGK_OPERATION_UNMAP_APERTURE_SEGMENT Value: 6 Perform an unmap-aperture-segment operation that unmaps a previously mapped range of an aperture segment. Common WDDMv1 and WDDMv2. |
DXGK_OPERATION_SPECIAL_LOCK_TRANSFER Value: 7 Perform a special transfer operation that moves the content of an allocation from one location to another. In this operation, the content of the allocation is transferred from or to the alternate virtual address that was set up for the allocation (that is, when the pfnLockCb function was called with the UseAlternateVA bit-field flag set). WDDMv1 only. |
DXGK_OPERATION_VIRTUAL_TRANSFER Value: 8 The operation is used to transfer allocation content between locations in memory. WDDMv1 only. |
DXGK_OPERATION_VIRTUAL_FILL Value: 9 The operation is used to fill an allocation with a pattern. WDDMv1 only. |
DXGK_OPERATION_INIT_CONTEXT_RESOURCE Value: 10 Perform a context initialization operation for a GPU context or device-specific context. This value is supported beginning with Windows 8. The display miniport driver allocates context resources by calling DxgkCbCreateContextAllocation. Common WDDMv1 and WDDMv2. |
DXGK_OPERATION_UPDATE_PAGE_TABLE Value: 11 The operation is called to allow the kernel mode driver to build a command buffer to update a page table. Available starting with WDDM 2.0. |
DXGK_OPERATION_FLUSH_TLB Value: 12 This operation instructs the GPU to flush translation look-aside buffer entries, which belong to the given root page table. Available starting with WDDM 2.0. |
DXGK_OPERATION_UPDATE_CONTEXT_ALLOCATION Value: 13 This operation is used to update the content of a context or device allocation. Available starting with WDDM 2.0. |
DXGK_OPERATION_COPY_PAGE_TABLE_ENTRIES Value: 14 This operation is called to copy page table entries from one location to another. Available starting with WDDM 2.0. |
DXGK_OPERATION_NOTIFY_RESIDENCY Value: 15 The paging operation is issued every time an allocation residency is changed (when allocation is evicted or committed). Available starting with WDDM 2.0. |
DXGK_OPERATION_SIGNAL_MONITORED_FENCE Value: 16 This operation is called to signal a monitored fence. Available starting with Windows 10, version 1703 (WDDM 2.2). |
DXGK_OPERATION_MAP_APERTURE_SEGMENT2 Value: 17 Perform a map-aperture-segment operation that maps an address descriptor list (ADL) into a range of an aperture segment. This operation behaves similarly to DXGK_OPERATION_MAP_APERTURE_SEGMENT, but provides a DXGK_ADL instead of an MDL. Drivers supporting logical address remapping receive calls to DXGK_OPERATION_MAP_APERTURE_SEGMENT2 instead of DXGK_OPERATION_MAP_APERTURE_SEGMENT. To opt in to this operation, which is required for IOMMU DMA remapping, the driver must indicate MapAperture2Supported support in DXGK_VIDMMCAPS structure. This operation is available starting with WDDM 3.0. |
DXGK_OPERATION_NOTIFY_FENCE_RESIDENCY Value: 18 This operation notifies the driver about fence residency changes. Available starting with WDDM 2.9. |
DXGK_OPERATION_MAP_MMU Value: 19 Available starting in Windows 11, version 24H2 (WDDM 3.2). |
DXGK_OPERATION_UNMAP_MMU Value: 20 Available starting in Windows 11, version 24H2 (WDDM 3.2). |
DXGK_OPERATION_NOTIFY_RESIDENCY2 Value: 21 Available starting in Windows 11, version 24H2 (WDDM 3.2). |
DXGK_OPERATION_NOTIFY_ALLOC Value: 22 This operation notifies the driver about certain paging operations for an allocation. Available starting in Windows 11, version 24H2 (WDDM 3.2). For more information, see Allocation notification. |
Remarks
The DXGK_BUILDPAGINGBUFFER_OPERATION structure is specified in the Operation member of the DXGKARG_BUILDPAGINGBUFFER structure, which is passed to DxgkDdiBuildPagingBuffer to build paging buffers for memory operations.
Requirements
Requirement | Value |
---|---|
Minimum supported client | Windows 10 |
Minimum supported server | Windows Server 2016 |
Header | d3dkmddi.h (include D3dkmddi.h) |