DXGK_BUILDPAGINGBUFFER_TRANSFERVIRTUAL structure (d3dkmddi.h)

DXGK_BUILDPAGINGBUFFER_TRANSFERVIRTUAL is used as part of an allocation transfer operation.

Syntax

typedef struct _DXGK_BUILDPAGINGBUFFER_TRANSFERVIRTUAL {
  HANDLE                         hAllocation;
  UINT64                         AllocationOffsetInBytes;
  UINT64                         TransferSizeInBytes;
  D3DGPU_VIRTUAL_ADDRESS         SourceVirtualAddress;
  D3DGPU_VIRTUAL_ADDRESS         DestinationVirtualAddress;
  D3DGPU_VIRTUAL_ADDRESS         SourcePageTable;
  DXGK_MEMORY_TRANSFER_DIRECTION TransferDirection;
  DXGK_TRANSFERVIRTUALFLAGS      Flags;
  D3DGPU_VIRTUAL_ADDRESS         DestinationPageTable;
} DXGK_BUILDPAGINGBUFFER_TRANSFERVIRTUAL;

Members

hAllocation

Kernel mode driver handle of the transferred allocation content. The handle is returned from DxgkDdiCreateAllocation. The allocation properties are needed to perform special transfers (as swizzle, de-swizzle, etc.).

AllocationOffsetInBytes

The offset in bytes from the start of the allocation being transferred. The offset should not be added to SourceVirtualAddress or DesinationVirtualAddress.

TransferSizeInBytes

The number of bytes to transfer.

SourceVirtualAddress

The virtual address of the source in the context of the paging process.

DestinationVirtualAddress

The virtual address of the destination in the context of the paging process.

SourcePageTable

The GPU virtual address of the page table that is used to map the SourceVirtualAddress address.

Note  The address is valid only when the DXGK_GPUMMUCAPS.LegacyBehaviors.SourcePageTableVaInTransfer cap is set.
 

TransferDirection

The DXGK_MEMORY_TRANSFER_DIRECTION structure describing the operation.

Flags

The DXGK_TRANSFERVIRTUALFLAGS structure describing the operation.

DestinationPageTable

The GPU virtual address of the page table that is used to map the DestinationVirtualAddress address. The address is valid only when the DXGK_GPUMMUCAPS.LegacyBehaviors.SourcePageTableVaInTransfer cap is set.

Requirements

Requirement Value
Minimum supported client Windows 10
Minimum supported server Windows Server 2016
Header d3dkmddi.h (include D3dkmddi.h)

See also

DXGKARG_BUILDPAGINGBUFFER

DXGK_MEMORY_TRANSFER_DIRECTION

DXGK_TRANSFERVIRTUALFLAGS

DxgkDdiCreateAllocation