ENABLE_VIRTUALIZATION コールバック関数 (wdm.h)
EnableVirtualization ルーチンは、単一ルート I/O 仮想化 (SR-IOV) インターフェイスをサポートする PCI Express (PCIe) デバイスの仮想化を有効または無効にします。
構文
ENABLE_VIRTUALIZATION EnableVirtualization;
NTSTATUS EnableVirtualization(
[in, out] PVOID Context,
[in] UINT16 NumVFs,
[in] BOOLEAN EnableVfMigration,
[in] BOOLEAN EnableMigrationInterrupt,
[in] BOOLEAN EnableVirtualization
)
{...}
パラメーター
[in, out] Context
インターフェイス固有のコンテキスト情報へのポインター。 呼び出し元は、インターフェイスのPCI_VIRTUALIZATION_INTERFACE構造体の Context メンバーとして渡される値を渡します。
[in] NumVFs
デバイスで有効にする PCIe 仮想関数 (VF) の数。 EnableVirtualization ルーチンは、PCIe SR-IOV 拡張機能構造体の NumVFs メンバーを NumVFs パラメーターの値に設定します。
EnableVirtualization パラメーターが FALSE の場合、NumVFs パラメーターを 0 に設定する必要があります。
[in] EnableVfMigration
マルチルート I/O 仮想化 (MR-IOV) 基本関数 (BF) が、実行時にデバイスの PCIe 物理関数 (PF) を VF として動的に再プロビジョニングできるかどうかを示すブール値。
このパラメーターは、SR-IOV インターフェイスと MR-IOV インターフェイスの両方をサポートするデバイスにのみ適用されます。 デバイスが MR-IOV インターフェイスではなく SR-IOV インターフェイスのみをサポートしている場合、ドライバーはこのパラメーターを FALSE に 設定する必要があります。
[in] EnableMigrationInterrupt
VF 移行中に PF に関連付けられている割り込みをマスクするかマスク解除するかを示す BOOLEAN 値。
EnableVfMigration パラメーターが FALSE の場合、ドライバーもこのパラメーターを FALSE に設定する必要があります。
[in] EnableVirtualization
デバイスの PCIe 構成空間で仮想化が有効かどうかを示すブール値。 EnableVirtualization パラメーターが TRUE の場合、EnableVirtualization ルーチンは PCIe SR-IOV コントロール フィールドの VF Enable ビットを設定します。 EnableVirtualization パラメーターが FALSE の場合、EnableVirtualization ルーチンはこのビットをクリアします。
戻り値
EnableVirtualization ルーチンは、次のいずれかの NTSTATUS 値を返します。
リターン コード | 説明 |
---|---|
STATUS_SUCCESS | 操作は正常に完了しました。 |
STATUS_INVALID_PARAMETER | NumVFs パラメーターが 0 であるか、またはデバイスの SR-IOV 拡張機能構造体の TotalVFs メンバーの値より大きい。 |
STATUS_INVALID_DEVICE_STATE | 仮想化はデバイスで既に有効になっており、 EnableVirtualization パラメーターが TRUE であるか、デバイスで仮想化が既に無効になっており 、EnableVirtualization パラメーターが FALSE です。 |
注釈
ドライバーは EnableVirtualization ルーチンを呼び出して、PCIe 構成空間で SR-IOV 拡張機能フィールドを構成します。 この呼び出しでは、構成空間の仮想化を有効または無効にし、デバイスによって PCIe ファブリックに公開する必要がある VM の数を指定します。
EnableVirtualization ルーチンは、GUID_PCI_VIRTUALIZATION_INTERFACE インターフェイスによって提供されます。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows Server 2012 以降のバージョンの Windows でサポートされています。 |
対象プラットフォーム | デスクトップ |
Header | wdm.h (Wdm.h を含む) |
IRQL | IRQL <= DISPATCH_LEVEL |