DXGKDDI_DISCONNECTDOORBELL callback function (d3dkmddi.h)

Important

Some information relates to a prerelease product which may be substantially modified before it's commercially released. Microsoft makes no warranties, express or implied, with respect to the information provided here.

The DxgkDdiDisconnectDoorbell function disconnects a previously connected doorbell from a hardware queue.

Syntax

DXGKDDI_DISCONNECTDOORBELL DxgkddiDisconnectdoorbell;

NTSTATUS DxgkddiDisconnectdoorbell(
  INOUT_PDXGKARG_DISCONNECTDOORBELL pArgs
)
{...}

Parameters

pArgs

[in/out] Pointer to a DXGKARG_DISCONNECTDOORBELL structure that describes the doorbell to disconnect.

Return value

DxgkDdiDisconnectDoorbell must succeed and return STATUS_SUCCESS.

Remarks

The OS calls DxgkDdiDisconnectDoorbell to unmap the physical doorbell location assigned to this doorbell. KMD should disconnect the hardware queue, doorbell physical address and engine, etc. The physical doorbell location can be assigned to some other logical doorbell object.

KMD should not destroy or free any other objects associated with hDoorbell because the doorbell object is not being destroyed and can be reconnected at a later point.

On return from this DDI call, Dxgkrnl does the following steps to disconnect the doorbell:

For more information, see User-mode work submission.

Requirements

Requirement Value
Minimum supported client Windows 11, version 24H2 (WDDM 3.2)
Header d3dkmddi.h
IRQL PASSIVE_LEVEL

See also

D3DDDI_DOORBELLSTATUS

D3DKMT_CREATE_DOORBELL

DXGKARG_DISCONNECTDOORBELL

DxgkDdiConnectDoorbell

DxgkDdiDisconnectDoorbellCB