Festlegen des Energiezustands einer virtuellen Funktion

Ein Überlastungstreiber gibt eine OID-Set-Anforderung (Object Identifier) von OID_SRIOV_SET_VF_POWER_STATE aus, um den Energiezustand einer angegebenen PCI Express (PCIe) Virtual Function (VF) auf dem Netzwerkadapter zu ändern. Da das Ändern des Energiezustands ein privilegierter Vorgang ist, stellen überlastende Treiber diese OID-Set-Anforderung an den Miniporttreiber der PCIe Physical Function (PF) auf dem Netzwerkadapter aus. Der PF-Miniporttreiber legt dann den angegebenen Energiezustand für die VF fest.

Der Virtualisierungsstapel verwaltet beispielsweise den Energiezustand der untergeordneten Hyper-V-Partition, die an die VF angefügt ist. Der Stapel ändert den Energiezustand, indem der OID_SRIOV_SET_VF_POWER_STATE an den PF-Miniporttreiber ausgegeben wird.

Bevor er die OID-Setanforderung von OID_SRIOV_SET_VF_POWER_STATE ausgibt, muss der überlastende Treiber die Elemente NDIS_SRIOV_SET_VF_POWER_STATE_PARAMETERS Struktur wie folgt festlegen:

  • Das VFId-Element muss auf den Bezeichner des VF festgelegt werden, aus dem die Informationen gelesen werden sollen.

  • Der PowerState-Member muss auf den Energiezustand festgelegt werden, zu dem der Vf übergehen soll.

  • Wenn für den Netzwerkadapter das WAKE#-Signal (auf dem PCI-Express-Bus) oder das PME#-Signal (auf dem PCI-Bus) festgelegt sein muss, wenn er in den Zustand mit geringer Leistung wechselt, muss der WakeEnable-Member auf TRUE festgelegt werden. Andernfalls muss dieser Member auf FALSE festgelegt werden.

Wenn der PF-Miniporttreiber diese OID-Set-Anforderung ausgestellt wird, muss er die folgenden Richtlinien befolgen:

  • Der PF-Miniporttreiber muss überprüfen, ob der vf, der vom VFId-Member der NDIS_SRIOV_SET_VF_POWER_STATE_PARAMETERS-Struktur angegeben wurde, Ressourcen aufweist, die zuvor zugewiesen wurden. Der PF-Miniporttreiber weist ressourcen für eine VF während einer OID-Methodenanforderung von OID_NIC_SWITCH_ALLOCATE_VF zu. Wenn sich der angegebene VF nicht in einem zugeordneten Zustand befindet, muss der Treiber die OID-Anforderung nicht ausführen.

  • Der Energiezustandsvorgang darf sich nur auf die angegebene VF auswirken. Der Vorgang darf sich nicht auf andere VFs oder die PF auf demselben Netzwerkadapter auswirken.