wdm.h) (PCI_VIRTUALIZATION_INTERFACE 结构

PCI_VIRTUALIZATION_INTERFACE结构使驱动程序能够管理和配置 PCI Express (PCIe) 配置空间,以便虚拟函数 (VF) 。 支持单根 I/O 虚拟化 (SR-IOV) 接口的设备在 PCI 总线上公开 VF。

此结构描述 GUID_PCI_VIRTUALIZATION_INTERFACE 接口。

语法

typedef struct _PCI_VIRTUALIZATION_INTERFACE {
  USHORT                            Size;
  USHORT                            Version;
  PVOID                             Context;
  PINTERFACE_REFERENCE              InterfaceReference;
  PINTERFACE_DEREFERENCE            InterfaceDereference;
  PSET_VIRTUAL_DEVICE_DATA          SetVirtualFunctionData;
  PGET_VIRTUAL_DEVICE_DATA          GetVirtualFunctionData;
  PGET_VIRTUAL_DEVICE_LOCATION      GetLocation;
  PGET_VIRTUAL_DEVICE_RESOURCES     GetResources;
  PENABLE_VIRTUALIZATION            EnableVirtualization;
  PGET_VIRTUAL_FUNCTION_PROBED_BARS GetVirtualFunctionProbedBars;
} PCI_VIRTUALIZATION_INTERFACE, *PPCI_VIRTUALIZATION_INTERFACE;

成员

Size

此结构的大小(以字节为单位)。

Version

驱动程序定义的接口版本。

Context

指向特定于接口的上下文信息的指针。

InterfaceReference

指向 InterfaceReference 例程的指针,该例程递增接口的引用计数。

InterfaceDereference

指向 InterfaceDereference 例程的指针,该例程递减接口的引用计数。

SetVirtualFunctionData

指向 SetVirtualFunctionData 例程的指针,该例程将数据写入 SR-IOV 设备的 VF 的 PCIe 配置空间。

GetVirtualFunctionData

指向 GetVirtualFunctionData 例程的指针,该例程从 SR-IOV 设备的 VF 的 PCIe 配置空间读取数据。

GetLocation

指向 GetLocation 例程的指针,该例程提供有关 PCIe 层次结构中 VF 的当前设备位置的信息。 对于使用 I/O 内存管理单元 (IOMMU) 来路由传入或传出设备的流量的虚拟化系统来说,此信息是必需的。

GetResources

指向 GetResources 例程的指针,该例程提供有关可用于 SR-IOV 设备上虚拟化的资源的信息。

EnableVirtualization

指向 EnableVirtualization 例程的指针,该例程启用或禁用 SR-IOV 设备上的虚拟化。

GetVirtualFunctionProbedBars

指向 GetVirtualFunctionProbedBars 例程的指针,该例程允许非特权 Hyper-V 虚拟机 (VM) 确定 PCI 总线驱动程序查询后将从 VF 的 PCIe 基址寄存器 (BAR) 读取的内容。 PCI 驱动程序执行此查询以确定设备所需的内存或 I/O 地址空间。

注解

对于支持 SR-IOV 接口的设备,驱动程序有时必须访问和管理设备 VF 的 PCIe 配置空间。 驱动程序从GUID_PCI_VIRTUALIZATION_INTERFACE接口调用例程,以访问设备上的 DF 的 PCIe 配置空间。

由于设备的 VF 在 PCI 总线上不显示为完整的 PCIe 设备, 因此GUID_BUS_INTERFACE_STANDARD 接口不能用于管理 VF。

PCI_VIRTUALIZATION_INTERFACE 结构是 INTERFACE 结构的扩展。

驱动程序通过将IRP_MN_QUERY_INTERFACE I/O 请求数据包 (IRP) 发送到其 InterfaceType 设置为 GUID_PCI_VIRTUALIZATION_INTERFACE 的总线驱动程序来获取指向 PCI_VIRTUALIZATION_INTERFACE 结构的指针。

要求

要求
最低受支持的服务器 Windows Server 2012
标头 wdm.h (包括 Wdm.h)

另请参阅

GUID_BUS_INTERFACE_STANDARD

InterfaceDereference

InterfaceReference

IRP_MN_QUERY_INTERFACE