OID_SRIOV_RESET_VF
上位ドライバーは、シングルルート I/O 仮想化をサポートするネットワーク アダプターで、指定された PCI Express (PCIe) 仮想関数 (VF) をリセットするOID_SRIOV_RE Standard Edition T_VFのオブジェクト識別子 (OID) セット要求を発行します。 上位ドライバーは、ネットワーク アダプターの PCI Express (PCIe) 物理関数 (PF) のミニポート ドライバーにこの OID セット要求を発行します。
NDIS_OID_REQUEST 構造体の InformationBuffer メンバーには NDIS_SRIOV_RESET_VF_PARAMETERS 構造体へのポインターが含まれています。 上位ドライバーは、この構造体の VFId メンバーを介してリセットする VF の識別子を指定します。
解説
VF は、PCI Express (PCIe) 関数レベル リセット (FLR) を介してリセットできます。 FLR 要求は権限操作であるため、HYPER-V 親パーティションの管理オペレーティング システムで実行される PF ミニポート ドライバーによってのみ実行できます。 管理オペレーティング システムで実行される上位ドライバーは、FLR 要求が通知され、PF ミニポート ドライバーにOID_SRIOV_RE Standard Edition T_VFの OID セット要求を発行します。
この OID 要求を処理する場合、PF ミニポート ドライバーは、次のガイドラインに従う必要があります:
PF ミニポート ドライバーは、 NDIS_SRIOV_RESET_VF_PARAMETERS 構造体の VFId メンバーによって指定された VF に、以前に割り当てられているリソースがあることを確認する必要があります。 PF ミニポート ドライバーは、 OID_NIC_SWITCH_ALLOCATE_VF メソッド要求の間に VF のリソースを割り当てます。 指定した VF のリソースが割り当てられていない場合、ドライバーは OID 要求に失敗する必要があります。
リセット操作は、指定された VF にのみ影響を与える必要があります。 この操作は、同じネットワーク アダプター上の他の VM または PF に影響を与えてはなりません。
詳細については、 仮想関数のリセット を参照してください。
状態コードを返します
PF ミニポート ドライバーは、OID_SRIOV_RE Standard Edition T_VFのセット要求の次の状態コードのいずれかを返します:
状態コード | 説明 |
---|---|
NDIS_STATUS_SUCCESS |
OID 要求は正常に完了しました。 |
NDIS_STATUS_NOT_SUPPORTED |
ミニポート ドライバーは、シングル ルート I/O 仮想化 (SR-IOV) インターフェイスをサポートしていないか、インターフェイスを使用できません。 |
NDIS_STATUS_INVALID_PARAMETER |
NDIS_SRIOV_RESET_VF_PARAMETERS 構造体の1つ以上のメンバーに無効な値があります。 |
NDIS_STATUS_INVALID_LENGTH |
情報バッファーが短すぎました。 PF ミニポートドライバーは、 NDIS_OID_REQUEST 構造体の DATA.SET_INFORMATION.BytesNeeded メンバーを設定する必要があります。 |
NDIS_STATUS_FAILURE |
その他の理由で要求に失敗しました。 |
要件
バージョン |
NDIS 6.30 以降でサポートされています。 |
ヘッダー |
Ntddndis.h (Ndis.h を含む) |