IOCTL_SRIOV_QUERY_MITIGATED_RANGE_COUNT IOCTL (pcivirt.h)

请求确定必须缓解的内存映射 I/O 空间的范围。

主要代码

IRP_MJ_DEVICE_CONTROL

输入缓冲区

指向 SRIOV_MITIGATED_RANGE_COUNT_INPUT 结构的指针。 将 VfIndex 成员设置为 0。

输入缓冲区长度

SRIOV_MITIGATED_RANGE_COUNT_INPUT 结构的大小。

输出缓冲区

指向 SRIOV_MITIGATED_RANGE_COUNT_OUTPUT 结构的指针,该结构由物理函数 (具有内存映射 I/O 空间范围的 PF) 驱动程序填充。

输出缓冲区长度

SRIOV_MITIGATED_RANGE_COUNT_OUTPUT结构的大小。

状态块

Irp->如果请求成功,IoStatus.Status 设置为 STATUS_SUCCESS。 否则, 状态 为相应的错误条件作为 NTSTATUS 代码。

注解

此 IOCTL 请求由虚拟化堆栈发送到公开GUID_MITIGABLE_DEVICE_INTERFACE的 PCI Express SR-IOV 物理功能 (PF) 驱动程序。

虚拟化堆栈使用 I/O MMU 来区分来自设备公开的各种接口的流量,并强制实施有关设备可以访问哪些内存区域以及可以生成哪些中断的策略。

虚拟化堆栈将请求发送到物理函数 (PF) 驱动程序,以找出内存映射 I/O 空间的范围,堆栈必须在这些页上放置拦截,并将这些页面中的读取和写入值的请求发送到 PF 驱动程序。

要求

要求
Header pcivirt.h
IRQL PASSIVE_LEVEL