Partager via


SRIOV_QUERY_LUID fonction de rappel (pcivirt.h)

Obtient l’identificateur unique local de l’appareil SR-IOV.

Syntaxe

SRIOV_QUERY_LUID SriovQueryLuid;

NTSTATUS SriovQueryLuid(
  [in]  PVOID Context,
  [out] PLUID Luid
)
{...}

Paramètres

[in] Context

Pointeur vers un contexte défini par le pilote.

[out] Luid

Pointeur vers l’identificateur unique local de l’appareil SR_IOV implémentant l’interface.

Valeur retournée

Retournez STATUS_SUCCESS si l’opération réussit. Sinon, retournez un code d’erreur NTSTATUS approprié.

Remarques

Cette fonction de rappel est implémentée par le pilote de fonction physique (PF). Il est appelé lorsque le système souhaite obtenir l’identificateur d’une fonction virtuelle spécifique.

Le pilote PF enregistre son implémentation en définissant le membre QueryLuid du SRIOV_DEVICE_INTERFACE_STANDARD, en configurant une structure WDF_QUERY_INTERFACE_CONFIG et en appelant WdfDeviceAddQueryInterface.

Voici un exemple d’implémentation de cette fonction de rappel. Le pilote PF génère un identificateur unique en appelant ZwAllocateLocallyUniqueId et le stocke dans le contexte de l’appareil.


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

    PAGED_CODE();

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

    return STATUS_SUCCESS;
}


Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows 10
Serveur minimal pris en charge Windows Server 2016
Plateforme cible Windows
En-tête pcivirt.h
IRQL PASSIVE_LEVEL