DXGKCB_OPENPHYSICALMEMORYOBJECT callback function (d3dkmddi.h)
A kernel-mode display miniport driver calls DXGKCB_OPENPHYSICALMEMORYOBJECT to open a physical memory object and associates it with an adapter.
Syntax
DXGKCB_OPENPHYSICALMEMORYOBJECT DxgkcbOpenphysicalmemoryobject;
NTSTATUS DxgkcbOpenphysicalmemoryobject(
[in/out] IN_OUT_PDXGKARGCB_OPEN_PHYSICAL_MEMORY_OBJECT pArgs
)
{...}
Parameters
[in/out] pArgs
Pointer to a DXGKARGCB_OPEN_PHYSICAL_MEMORY_OBJECT structure that contains information about the physical memory object to open.
Return value
DXGKCB_OPENPHYSICALMEMORYOBJECT returns STATUS_SUCCESS if the operation succeeds. Otherwise, returns an appropriate NTSTATUS error code.
Remarks
In order to create an address descriptor list (ADL) from a physical memory object, it must first be associated with an adapter. This is normally done when the physical memory object is created by specifying the hAdapter parameter in a call to DXGKCB_CREATEPHYSICALMEMORYOBJECT. However, in some cases, the adapter handle is not available at the time the memory was allocated (for example, early in the boot process). In this case, the driver must call DXGKCB_OPENPHYSICALMEMORYOBJECT to associate the physical memory object with an adapter prior to calling DXGKCB_ALLOCATEADL.
See IOMMU DMA remapping for more information.
DXGKCB_XXX functions are implemented by Dxgkrnl. To use this callback function, set the appropriate members of DXGKARGCB_OPEN_PHYSICAL_MEMORY_OBJECT and then call DxgkCbOpenPhysicalMemoryObject via the DXGKRNL_INTERFACE.
Requirements
Requirement | Value |
---|---|
Minimum supported server | Windows Server 2022 (WDDM 2.9) |
Header | d3dkmddi.h |
IRQL | PASSIVE_LEVEL |
See also
DXGKARGCB_OPEN_PHYSICAL_MEMORY_OBJECT