次の方法で共有


SET_VIRTUAL_DEVICE_DATA コールバック関数 (wdm.h)

SetVirtualFunctionData ルーチンは、単一ルート I/O 仮想化 (SR-IOV) インターフェイスをサポートするデバイス上の仮想関数 (VF) の PCI Express (PCIe) 構成空間にデータを書き込みます。

構文

SET_VIRTUAL_DEVICE_DATA SetVirtualDeviceData;

ULONG SetVirtualDeviceData(
  [in, out] PVOID Context,
  [in]      USHORT VirtualFunction,
  [in]      PVOID Buffer,
  [in]      ULONG Offset,
  [in]      ULONG Length
)
{...}

パラメーター

[in, out] Context

インターフェイス固有のコンテキスト情報へのポインター。 呼び出し元は、インターフェイスの PCI_VIRTUALIZATION_INTERFACE 構造体の コンテキスト メンバーとして渡される値を渡します。

[in] VirtualFunction

データの書き込み元となるデバイス上の VF を指定する 0 から始まる値。

[in] Buffer

VF の PCIe 構成空間に書き込む構成情報を格納しているバッファーへのポインター。

[in] Offset

VF の PCIe 構成空間データへのオフセット。 このメンバーは、この書き込み操作が開始される場所を指定します。

[in] Length

書き込むデータの長さ (バイト単位)。

戻り値

*SetVirtualFunctionData ルーチンは、書き込み操作の成功後に書き込まれた PCIe 構成データの長さをバイト単位で返します。 書き込み操作が失敗した場合、ルーチンは 0 を返します。

備考

*SetVirtualFunctionData ルーチンは、SetBusData ルーチンに似ていますが、PCIe 構成データをデバイスの物理機能 (PF) ではなく VF に書き込む点が異なります。

*SetVirtualFunctionData ルーチンは、GUID_PCI_VIRTUALIZATION_INTERFACE インターフェイスによって提供されます。 SetBusData ルーチンは、GUID_BUS_INTERFACE_STANDARD インターフェイスによって提供されます。

仮想化スタックは、ゲスト オペレーティング システムで実行されているドライバーが SetBusData ルーチンを呼び出すときに、 *SetVirtualFunctionData を呼び出します。

必要条件

要件 価値
サポートされる最小クライアント Windows Server 2012 以降のバージョンの Windows でサポートされています。
ターゲット プラットフォーム デスクトップ
ヘッダー wdm.h (Wdm.h を含む)
IRQL IRQL <= APC_LEVEL

関連項目

SetBusData

PCI_VIRTUALIZATION_INTERFACE