Compartilhar via


função de retorno de chamada SRIOV_QUERY_VF_LUID (pcivirt.h)

Obtém o identificador exclusivo local da função virtual PCI Express SR-IOV (VF).

Sintaxe

SRIOV_QUERY_VF_LUID SriovQueryVfLuid;

NTSTATUS SriovQueryVfLuid(
  [in]  PVOID Context,
  [in]  USHORT VfIndex,
  [out] PLUID Luid
)
{...}

Parâmetros

[in] Context

Um ponteiro para um contexto definido pelo driver.

[in] VfIndex

Um índice baseado em zero do VF que está sendo consultado.

[out] Luid

Um ponteiro para o identificador exclusivo local do dispositivo SR_IOV implementando a interface.

Retornar valor

Retorne STATUS_SUCCESS se a operação for bem-sucedida. Caso contrário, retorne um código de erro NTSTATUS apropriado.

Comentários

Essa função de retorno de chamada é implementada pelo driver PF (função física). Ele é invocado quando o sistema deseja obter o identificador de uma função virtual específica.

O driver PF registra sua implementação definindo o membro QueryLuid do SRIOV_DEVICE_INTERFACE_STANDARD_2, configurando uma estrutura WDF_QUERY_INTERFACE_CONFIG e chamando WdfDeviceAddQueryInterface.

Aqui está um exemplo de implementação dessa função de retorno de chamada. O driver PF gera um identificador exclusivo chamando ZwAllocateLocallyUniqueId e o armazena no contexto do dispositivo.


NTSTATUS
Virtualization_QueryLuid (
    _In_        PVOID             Context,
    _Out_       PLUID             Luid
    )
{
    PDEVICE_CONTEXT deviceContext;

    PAGED_CODE();

    deviceContext = (PDEVICE_CONTEXT)Context;
    *Luid = deviceContext->Luid;

    return STATUS_SUCCESS;
}


Requisitos

Requisito Valor
Cliente mínimo com suporte Windows 10
Servidor mínimo com suporte Windows Server 2016
Plataforma de Destino Windows
Cabeçalho pcivirt.h