IOMMU_REGISTER_INTERFACE_STATE_CHANGE_CALLBACK função de retorno de chamada (wdm.h)

Permite que o chamador registre um retorno de chamada a ser invocado sempre que ocorrer qualquer alteração de estado relacionada a um DMA_IOMMU_INTERFACE_EX .

Sintaxe

IOMMU_REGISTER_INTERFACE_STATE_CHANGE_CALLBACK IommuRegisterInterfaceStateChangeCallback;

NTSTATUS IommuRegisterInterfaceStateChangeCallback(
  PIOMMU_INTERFACE_STATE_CHANGE_CALLBACK StateChangeCallback,
  PVOID Context,
  PIOMMU_DMA_DEVICE DmaDevice,
  PIOMMU_INTERFACE_STATE_CHANGE_FIELDS StateFields
)
{...}

Parâmetros

StateChangeCallback

[In] O IOMMU_INTERFACE_STATE_CHANGE_CALLBACK a ser registrado.

Context

[In, opcional] Um contexto opcional que será passado para o retorno de chamada de alteração de estado.

DmaDevice

[In] Um ponteiro para um token opaco que representa o IOMMU_DMA_DEVICE que será vinculado ao retorno de chamada.

StateFields

[In] Um ponteiro para os estados sobre os quais um chamador está se registrando para ser notificado. Consulte IOMMU_INTERFACE_STATE_CHANGE_FIELDS.

Retornar valor

STATUS_SUCCESS se a operação for bem-sucedida.

Os valores de retorno de erro possíveis incluem os seguintes códigos de status.

Código de retorno Descrição
STATUS_UNSUCCESSFUL A rotina não registrou o retorno de chamada fornecido porque o IOMMU_DMA_DEVICE já foi registrado com um retorno de chamada.
STATUS_INVALID_PARAMETER_4 O chamador não indicou interesse em nenhum campo de estado de interface no StateFields.

Para obter mais informações, consulte Valores NTSTATUS.

Comentários

O registro sempre invocará imediatamente o retorno de chamada para evitar condições de corrida com quaisquer notificações que invoquem os retornos de chamada. Os proprietários de retorno de chamada não devem assumir o estado quando um retorno de chamada é invocado e devem sempre marcar que o estado corresponda às suas necessidades.

Antes de descartar um DMA_IOMMU_INTERFACE_EX ou IOMMU_DMA_DEVICE, o proprietário é responsável por cancelar o registro de todos os seus retornos de chamada registrados.

Somente um retorno de chamada pode ser registrado por IOMMU_DMA_DEVICE.

Requisitos

Requisito Valor
Servidor mínimo com suporte Windows Server 2022
Cabeçalho wdm.h (inclua Wdm.h)

Confira também

DMA_IOMMU_INTERFACE_V2

DMA_IOMMU_INTERFACE_EX

IOMMU_INTERFACE_STATE_CHANGE_CALLBACK

IOMMU_INTERFACE_STATE_CHANGE_FIELDS

IOMMU_UNREGISTER_INTERFACE_STATE_CHANGE_CALLBACK