DXGKETW_PAGINGOPERATION structure
Describes parameters for building a paging buffer that is used in a memory-transfer operation.
Syntax
typedef struct _DXGKETW_PAGINGOPERATION {
EVENT_TRACE_HEADER wmiTraceHeader;
ULONGLONG pDxgAdapter;
ULONGLONG hDmaBuffer;
BOOL ContinueNextBuffer;
union {
struct {
ULONGLONG hAllocationGlobalHandle;
ULONG TransferOffset;
ULONGLONG TransferSize;
struct {
ULONG SegmentId;
ULONGLONG SegmentOffset;
} Source;
struct {
ULONG SegmentId;
ULONGLONG SegmentOffset;
} Destination;
DXGKETW_TRANSFERFLAGS Flags;
} Transfer;
};
struct {
ULONGLONG hAllocationGlobalHandle;
ULONGLONG FillSize;
ULONG FillPattern;
struct {
ULONG SegmentId;
ULONGLONG SegmentOffset;
} Destination;
} Fill;
struct {
ULONGLONG hAllocationGlobalHandle;
DXGKETW_DISCARDCONTENTFLAGS Flags;
ULONG SegmentId;
ULONGLONG SegmentOffset;
} DiscardContent;
struct {
ULONG SegmentId;
ULONGLONG SegmentOffset;
} ReadPhysical;
struct {
ULONG SegmentId;
ULONGLONG SegmentOffset;
} WritePhysical;
struct {
ULONGLONG hAllocationGlobalHandle;
ULONG SegmentId;
ULONGLONG OffsetInPages;
ULONGLONG NumberOfPages;
DXGKETW_MAPAPERTUREFLAGS Flags;
} MapApertureSegment;
struct {
ULONGLONG hAllocationGlobalHandle;
ULONG SegmentId;
ULONGLONG OffsetInPages;
ULONGLONG NumberOfPages;
DXGKETW_MAPAPERTUREFLAGS Flags;
} UnmapApertureSegment;
struct {
ULONGLONG hAllocationGlobalHandle;
ULONG TransferOffset;
ULONGLONG TransferSize;
struct {
ULONG SegmentId;
ULONGLONG SegmentOffset;
} Source;
struct {
ULONG SegmentId;
ULONGLONG SegmentOffset;
} Destination;
DXGKETW_TRANSFERFLAGS Flags;
ULONG SwizzlingRangeId;
ULONG SwizzlingRangeData;
} SpecialLockTransfer;
} DXGKETW_PAGINGOPERATION;
Members
wmiTraceHeader
A value of type EVENT_TRACE_HEADER that is used to report events to the WMI event logger.pDxgAdapter
[in] A pointer to a block of memory for the graphics adapter that the device context is created on. This pointer identifies the adapter for kernel-mode creation.hDmaBuffer
[in/out] A handle to the paging buffer.ContinueNextBuffer
[in] If TRUE, the memory-transfer operation extends to the next buffer.Transfer
[in] A structure that describes the transfer operation.hAllocationGlobalHandle
[in] A handle to the allocation that the display miniport driver's DxgkDdiCreateAllocation function previously returned in the hAllocation member of a DXGK_ALLOCATIONINFO structure, which is part of the DXGKARG_CREATEALLOCATION structure's pAllocationInfo member. The allocation handle points to a buffer that contains private driver data for the transfer.TransferOffset
[in] The offset, in bytes, of the first page within the allocation that is transferred. This offset is applied only to a location that a segment location describes. This offset does not apply to an MDL description of a memory range. If the driver requires more than one paging buffer to complete the transfer (that is, the driver returns STATUS_GRAPHICS_INSUFFICIENT_DMA_BUFFER from its DxgkDdiBuildPagingBuffer function), TransferOffset is the same for each call to DxgkDdiBuildPagingBuffer for this transfer.TransferSize
[in] The size, in bytes, of the memory information to transfer.Source
[in] A structure that describes the source allocation.SegmentId
[in] The identifier of a segment within the source allocation.SegmentOffset
[in] The offset, in bytes, of the source allocation from the base address of the segment.
Destination
[in] A structure that describes the destination allocation.SegmentId
[in] The identifier of a segment within the source allocation.SegmentOffset
[in] The offset, in bytes, of the destination allocation from the base address of the segment.
Flags
[in] A DXGKETW_TRANSFERFLAGS structure that identifies, in bit-field flags, the type of special-lock-transfer operation to perform.
Fill
[in] A structure that describes the fill operation.hAllocationGlobalHandle
[in] A handle to the allocation that contains content to fill.FillSize
[in] The size, in bytes, of the memory information to fill.FillPattern
[in] The pattern to fill the destination with. The video memory manager uses this information to initialize video memory to a specific pattern when an allocation without content is first paged in. In this case, no source exists for the fill request—only a destination exists.Destination
[in] A structure that describes the destination allocation for the fill operation.SegmentId
[in] The identifier of a segment within the destination allocation.SegmentOffset
[in] The offset, in bytes, of the destination allocation from the base address of the segment.
DiscardContent
[in] A structure that describes the discard-content operation.hAllocationGlobalHandle
[in] A handle to the allocation that contains content to discard.Flags
[in] A DXGKETW_DISCARDCONTENTFLAGS structure that identifies, in bit-field flags, the type of discard-content operation to perform.SegmentId
[in] The identifier of a segment within the allocation to discard content from.SegmentOffset
[in] The offset, in bytes, of the allocation specified by SegmentId from the base address of the segment.
ReadPhysical
[in] A structure that describes the read-physical operation.SegmentId
[in] The identifier of a segment that data is read from.SegmentOffset
[in] The offset, in bytes, of the allocation specified by SegmentId from the base address of the segment.
WritePhysical
[in] A structure that describes the write-physical operation.SegmentId
[in] The identifier of a segment to which data is written.SegmentOffset
[in] The offset, in bytes, of the allocation specified by SegmentId from the base address of the segment.
MapApertureSegment
[in] A structure that describes the map-aperture-segment operation.hAllocationGlobalHandle
[in] A handle to the allocation that is mapped into the aperture segment that SegmentId specifies.hAllocationGlobalHandle is NULL when a DMA buffer is mapped into the aperture segment because DMA buffers are not explicitly created by the driver.
SegmentId
[in] The identifier of an aperture segment to configure.OffsetInPages
[in] The offset, in pages, from the beginning of the segment to the first pages to map.NumberOfPages
[in] The number of pages to map.Flags
[in] A DXGKETW_MAPAPERTUREFLAGS structure that identifies, in bit-field flags, the type of map-aperture-segment operation to perform.
UnmapApertureSegment
[in] A structure that describes the unmap-aperture-segment operation.hAllocationGlobalHandle
[in] A handle to the allocation that is unmapped from the aperture segment that SegmentId specifies.hAllocationGlobalHandle is NULL when a DMA buffer is unmapped from the aperture segment because DMA buffers are not explicitly created by the driver.
SegmentId
[in] The identifier of an aperture segment to configure.OffsetInPages
[in] The offset, in pages, from the beginning of the segment to the first pages to unmap.NumberOfPages
[in] The number of pages to unmap.Flags
[in] A DXGKETW_MAPAPERTUREFLAGS structure that identifies, in bit-field flags, the type of unmap-aperture-segment operation to perform.
SpecialLockTransfer
[in] A structure that describes the special-lock-transfer operation.hAllocationGlobalHandle
[in] A handle to the allocation that the driver's DxgkDdiCreateAllocation function previously returned in the hAllocation member of a DXGK_ALLOCATIONINFO structure, which is part of the DXGKARG_CREATEALLOCATION structure's pAllocationInfo member. The allocation handle points to a buffer that contains private driver data for the special-lock transfer.TransferOffset
[in] The offset, in bytes, of the first page within the allocation that is transferred. This offset is applied only to a location that a segment location describes. This offset does not apply to an MDL description of a memory range. If the driver requires more than one paging buffer to complete the transfer (that is, the driver returns STATUS_GRAPHICS_INSUFFICIENT_DMA_BUFFER from its DxgkDdiBuildPagingBuffer function), TransferOffset is the same for each call to DxgkDdiBuildPagingBuffer for this transfer.TransferSize
[in] The size, in bytes, of the memory information to transfer.Source
[in] A structure that describes the source allocation.SegmentId
[in] The identifier of a segment within the source allocation.SegmentOffset
[in] The offset, in bytes, of the source allocation from the base address of the segment.
Destination
[in] A structure that describes the destination allocation.SegmentId
[in] The identifier of a segment within the destination allocation.SegmentOffset
[in] The offset, in bytes, of the destination allocation from the base address of the segment.
Flags
[in] A DXGKETW_TRANSFERFLAGS structure that identifies, in bit-field flags, the type of special-lock-transfer operation to perform.SwizzlingRangeId
[in] The identifier of a swizzling range.SwizzlingRangeData
[in] Specifies swizzling range data.
Requirements
Minimum supported client |
Windows 8 Release Preview |
Minimum supported server |
Windows Server 2012 |
Header |
Dxetwevt.h (include Dxetwevt.h) |
See also
Send comments about this topic to Microsoft
Build date: 7/11/2012