Compartilhar via


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

[em] O IOMMU_INTERFACE_STATE_CHANGE_CALLBACK a ser registrado.

Context

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

DmaDevice

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

StateFields

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

Valor de retorno

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 falhou ao registrar 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 em StateFields.

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

Observações

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 verificar se o estado corresponde à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 com suporte mínimo Windows Server 2022
cabeçalho wdm.h (inclua Wdm.h)

Consulte 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