OID_NIC_SWITCH_FREE_VF
上部のドライバーは、オブジェクト識別子 (OID) セット要求 OID_NIC_SWITCH_FREE_VF を発行して、ネットワーク アダプターの PCI Express (PCIe) 仮想機能 (VF) のリソースを解放します。
上部のドライバーは、ネットワークアダプターの PCIe 物理機能 (PF) 用ミニポートドライバーにこの OID セット要求を発行します。 この OID セット要求は、単一ルート I/O 仮想化 (SR-IOV) インターフェイスをサポートする PF ミニポート ドライバーに必要です。
NDIS_OID_REQUEST 構造体の InformationBuffer メンバーには、NDIS_NIC_SWITCH_FREE_VF_PARAMETERS 構造体を指すポインターが含まれています。
上部のドライバーは、この構造体の VFId メンバーを介して解放する VF の識別子を指定します。 このドライバーは、OID_NIC_SWITCH_ALLOCATE_VF の以前の OID メソッド要求からこの識別子を取得しています。
解説
上部のドライバーは、OID_NIC_SWITCH_FREE_VF の OID セット要求 を発行して、VF のリソースを解放します。 これらのリソースは、以前は OID メソッド要求 OID_NIC_SWITCH_ALLOCATE_VF を通じて割り当てられていました。
VF リソースを解放する方法の詳細については、「仮想機能のリソースの解放」を参照してください。
注 上部のドライバーが VF のリソース割り当てを要求すると、そのドライバーは、同じ VF のリソースの解放を要求できる唯一のコンポーネントです。 上部のドライバーは、VF リソースを解放する OID セット要求 OID_NIC_SWITCH_FREE_VF を発行する必要があります。 上部のドライバーを停止する前に、ドライバーの OID_NIC_SWITCH_ALLOCATE_VF 要求によって割り当てられた各 VF のリソースを解放する必要があります。
状態コードを返す
ミニポート ドライバーの MiniportOidRequest 関数は、この要求に対して次のいずれかの値を返します。
用語 | 説明 |
---|---|
NDIS_STATUS_SUCCESS |
ミニポート ドライバーが要求を正常に完了しました。 |
NDIS_STATUS_PENDING |
ミニポート ドライバーは、非同期的に要求を完了します。 ミニポート ドライバーは、すべての処理を完了した後、NdisMOidRequestComplete 関数を呼び出して要求を成功させ、Status パラメーターの NDIS_STATUS_SUCCESS を渡す必要があります。 |
NDIS_STATUS_NOT_ACCEPTED |
ミニポート ドライバーがリセット中です。 |
NDIS_STATUS_REQUEST_ABORTED |
ミニポート ドライバーが要求の処理を停止しました。 たとえば、NDIS は、MiniportResetEx 関数を呼び出しました。 |
NDIS は、この要求に対して次のいずれかの状態コードを返します。
用語 | 説明 |
---|---|
NDIS_STATUS_SUCCESS |
OID 要求は正常に完了しました。 |
NDIS_STATUS_NOT_SUPPORTED |
PF ミニポート ドライバーが SR-IOV インターフェイスをサポートしていないか、インターフェイスの使用が有効になっていません。 |
NDIS_STATUS_FILE_NOT_FOUND |
NDIS_NIC_SWITCH_FREE_VF_PARAMETERS 構造体の 1 つ以上のメンバーに無効な値が含まれています。 たとえば、VFId メンバーは、割り当てられていない、または VPort が削除されていない VF を指定できます。 |
NDIS_STATUS_INVALID_LENGTH |
情報バッファーが小さすぎます。 NDIS は、NDIS_OID_REQUEST 構造体の DATA.SET_INFORMATION.BytesNeeded メンバーに必要最小限のバッファー サイズを設定します。 |
要件
バージョン |
NDIS 6.30 以降でサポートされています。 |
ヘッダー |
Ntddndis.h (Ndis.h を含む) |