次の方法で共有


OID_NIC_SWITCH_DELETE_SWITCH

NDIS は、OID_NIC_SWITCH_DELETE_SWITCH のオブジェクト識別子 (OID) セット要求を発行して、ネットワーク アダプターから NIC スイッチを削除します。

NDIS は、ネットワーク アダプターの PCI Express (PCIe) 物理機能 (PF) のミニポート ドライバーにこの OID セット要求を発行します。 この OID セット要求は、単一ルート I/O 仮想化 (SR-IOV) インターフェイスをサポートする PF ミニポート ドライバーに必要です。

プロトコル ドライバーやフィルター ドライバーなどの上部のドライバーは、PF ミニポート ドライバーにこの OID メソッド要求を発行できません。

NDIS_OID_REQUEST 構造体の InformationBuffer メンバーには、NDIS_NIC_SWITCH_DELETE_SWITCH_PARAMETERS 構造体を指すポインターが含まれています。

解説

OID_NIC_SWITCH_DELETE_SWITCH の OID セット要求によって、OID_NIC_SWITCH_CREATE_SWITCH の OID メソッド要求によって以前に作成された NIC スイッチが削除されます。

OID_NIC_SWITCH_DELETE_SWITCH の OID メソッド要求を受信すると、PF ミニポート ドライバーでは、次の操作を行う必要があります。

  1. PF ミニポート ドライバーは、NIC スイッチの静的な作成と構成をサポートしている場合、指定した NIC スイッチに関連付けられているソフトウェア リソースを解放する必要があります。 ただし、ドライバーが NIC スイッチのハードウェア リソースを解放するのは、MiniportHaltEx が呼び出されたときのみです。

    静的な NIC スイッチの作成の詳細については、「NIC スイッチの静的な作成」を参照してください。

  2. PF ミニポート ドライバーは、NIC スイッチの動的な作成と構成をサポートしている場合、指定された NIC スイッチに関連付けられているハードウェアおよびソフトウェア リソースを解放する必要があります。

    動的な NIC スイッチの作成の詳細については、「NIC スイッチの動的な作成」を参照してください。

  3. PF ミニポート ドライバーが動的な作成をサポートし、すべての NIC スイッチが削除されている場合、ドライバーは NdisMEnableVirtualization を呼び出すことによって、アダプターの仮想化を無効にする必要があります。 仮想化を無効にするには、ネットワーク アダプターでは EnableVirtualization パラメーターを FALSE に設定し、NumVFs パラメーターを 0 に設定する必要があります。

    NdisMEnableVirtualization は、ネットワーク アダプターの PF の PCI 構成領域の SR-IOV 拡張機能構造の NumVFs メンバーと VF Enable ビットをクリアします。

    PF ミニポート ドライバーは、NIC スイッチの静的な作成と構成をサポートしている場合、MiniportHaltEx が呼び出されたときにのみ、NdisMEnableVirtualization を呼び出す必要があります。

詳細については、「NIC スイッチの削除」を参照してください。

状態コードを返す

ミニポート ドライバーの 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_DELETE_SWITCH_PARAMETERS 構造体の 1 つ以上のメンバーに無効な値が含まれています。

NDIS_STATUS_INVALID_LENGTH

情報バッファーが小さすぎます。 NDIS は、NDIS_OID_REQUEST 構造体の DATA.SET_INFORMATION.BytesNeeded メンバーに必要最小限のバッファー サイズを設定します。

要件

バージョン

NDIS 6.30 以降でサポートされています。

ヘッダー

Ntddndis.h (Ndis.h を含む)

関連項目


MiniportHaltEx

NDIS_OID_REQUEST

NDIS_NIC_SWITCH_DELETE_SWITCH_PARAMETERS

OID_NIC_SWITCH_ALLOCATE_VF

OID_NIC_SWITCH_CREATE_SWITCH

OID_NIC_SWITCH_DELETE_VPORT

OID_NIC_SWITCH_FREE_VF