次の方法で共有


IOCTL_SRIOV_MITIGATED_RANGE_UPDATE IOCTL (pcivirt.h)

IOCTL_SRIOV_MITIGATED_RANGE_UPDATE要求は、仮想化スタックが軽減策の範囲に更新することを示します。

メジャー コード

IRP_MJ_DEVICE_CONTROL

[入力バッファー]

SRIOV_MITIGATED_RANGE_UPDATE_INPUT構造体へのポインター。

入力バッファーの長さ

SRIOV_MITIGATED_RANGE_UPDATE_INPUT構造体のサイズ。

ステータス ブロック

Irp->要求が成功した場合、IoStatus.Status はSTATUS_SUCCESSに設定されます。 それ以外の場合は、NTSTATUS コードとして適切なエラー条件に対する状態

注釈

この IOCTL 要求は、仮想化スタックによって、MITIGABLE_DEVICE_INTERFACEを公開する PCI Express SR-IOV 物理関数 (PF) ドライバーに送信されます。

スタックは I/O MMU を使用して、デバイスが公開するさまざまなインターフェイスからのトラフィックを区別し、デバイスがアクセスできるメモリの領域と生成できる割り込みに関するポリシーを適用します。 そのメモリ範囲が更新されると、スタックはこの要求を送信します。

物理関数 (PF ドライバー) は、仮想化スタック によって要求が 取り消されるか、PF ドライバーが仮想関数 (VF) ドライバーに要求を送信して特定の VF の軽減範囲に更新するまで、IOCTL_SRIOV_MITIGATED_RANGE_UPDATE要求をキューに保持します。 VF が要求を完了すると、PF は IOCTL_SRIOV_MITIGATED_RANGE_UPDATE 要求を完了します。 完了すると、仮想化スタックは、 IOCTL_SRIOV_QUERY_MITIGATED_RANGE_COUNT 要求と IOCTL_SRIOV_QUERY_MITIGATED_RANGES 要求を送信することで軽減マップを再初期化します。 スタックは、軽減する範囲を追加するために、任意のユーザー モード デバイス シミュレーションを呼び出す場合もあります。 IOCTL_SRIOV_MITIGATED_RANGE_UPDATE要求は、アクティブな仮想関数ごとに送信されます。

要件

要件
Header pcivirt.h
IRQL PASSIVE_LEVEL