OID_NIC_SWITCH_VF_PARAMETERS
上部のドライバーまたはユーザー モード アプリケーションは、OID_NIC_SWITCH_VF_PARAMETERS のオブジェクト識別子 (OID) メソッド要求を発行して、ネットワーク アダプター上の PCI Express (PCIe) 仮想機能 (VF) の現在の構成パラメーターを取得します。 OID_NIC_SWITCH_VF_PARAMETERS の OID メソッド要求を介して照会できるのは、OID_NIC_SWITCH_ALLOCATE_VF の OID メソッド要求を介してリソースが割り当てられている VF のみです。
NDIS は、ミニポート ドライバーに対する OID_NIC_SWITCH_VF_PARAMETERS の OID メソッド要求を処理します。
OID メソッドの要求が行われると、NDIS_OID_REQUEST 構造体の InformationBuffer メンバーには、NDIS_NIC_SWITCH_VF_PARAMETERS 構造体へのポインターが含まれます。
解説
上部のドライバーまたはユーザー モード アプリケーションは、VF の識別子に NDIS_NIC_SWITCH_VF_PARAMETERS 構造体の VFId メンバーを設定することによって、クエリを実行する VF を指定します。 上部のドライバーまたはアプリケーションは、次のいずれかの方法で VF 識別子を取得します。
OID_NIC_SWITCH_ENUM_VFS の OID メソッド要求を発行する。
この OID 要求が正常に完了すると、上部のドライバーまたはユーザー モード アプリケーションは、ネットワーク アダプターに割り当てられているすべての VF の一覧を受け取ります。 リスト内の各要素は、VFId メンバーによって VF 識別子が指定されている NDIS_NIC_SWITCH_VF_INFO 構造体です。
OID_NIC_SWITCH_ALLOCATE_VF の OID メソッド要求を発行する。
この OID 要求が正常に完了した場合、上部のドライバーは、返された NDIS_NIC_SWITCH_VF_PARAMETERS 構造体の VFId メンバーで新しく作成された VF の識別子を受け取ります。
注 この方法で VF 識別子を取得できるのは、上部のドライバーだけです。
OID メソッド要求から正常に返されると、NDIS_OID_REQUEST 構造体の InformationBuffer メンバーには、NDIS_NIC_SWITCH_VF_PARAMETERS 構造体へのポインターが含まれています。 この構造体には、指定された VF の構成パラメーターが含まれています。
状態コードを返す
NDIS は、ミニポート ドライバーに対する OID_NIC_SWITCH_VF_PARAMETERS の OID メソッド要求を処理し、OID_NIC_SWITCH_VF_PARAMETERS の OID メソッド要求について次の状態コードを返します。
状態コード | 説明 |
---|---|
NDIS_STATUS_SUCCESS |
要求は正常に完了しました。 InformationBuffer メンバーは NDIS_NIC_SWITCH_VF_PARAMETERS 構造体を指します。 |
NDIS_STATUS_NOT_SUPPORTED |
ミニポート ドライバーがシングル ルート I/O 仮想化 (SR-IOV) インターフェイスをサポートしていないか、インターフェイスの使用が有効になっていません。 |
NDIS_STATUS_INVALID_PARAMETER |
NDIS_NIC_SWITCH_VF_PARAMETERS 構造体の 1 つ以上のメンバーに無効な値が含まれています。 |
NDIS_STATUS_INVALID_LENGTH |
情報バッファーの長さが sizeof(NDIS_NIC_SWITCH_VF_PARAMETERS) 未満です。 NDIS は、NDIS_OID_REQUEST 構造体の DATA.METHOD_INFORMATION.BytesNeeded メンバー を 必要な最小バッファー サイズに設定します。 |
NDIS_STATUS_INVALID_LENGTH |
情報バッファーが短すぎました。 NDIS は、NDIS_OID_REQUEST 構造体の DATA.METHOD_INFORMATION.BytesNeeded メンバー を 必要な最小バッファー サイズに設定します。 |
NDIS_STATUS_FAILURE |
その他の理由で要求に失敗しました。 |
要件
バージョン |
NDIS 6.30 以降でサポートされています。 |
ヘッダー |
Ntddndis.h (Ndis.h を含む) |