SRIOV_READ_BLOCK回调函数 (pcivirt.h)
从 PCI Express SR-IOV 虚拟函数的指定配置块 (VF) 读取数据。
语法
SRIOV_READ_BLOCK SriovReadBlock;
NTSTATUS SriovReadBlock(
[in] PVOID Context,
[in] USHORT VfIndex,
[in] ULONG BlockId,
[out] PVOID Buffer,
[in] ULONG Length
)
{...}
参数
[in] Context
指向驱动程序定义的上下文的指针。
[in] VfIndex
此读取操作应用到的 VF 的从零开始的索引。
[in] BlockId
标识要读取的块的数字。 这由 PF 驱动程序的提供程序定义。
[out] Buffer
指向接收从 VF 配置空间读取的数据的缓冲区的指针。
[in] Length
此读取操作的长度(以字节为单位)。 不得大于 Pcivirt.h 中定义的VPCI_MAX_READ_WRITE_BLOCK_SIZE。
返回值
如果操作成功,则返回STATUS_SUCCESS。 否则,返回相应的 NTSTATUS 错误代码。
注解
此回调函数由 PF) 驱动程序 (物理函数实现。 当系统想要读取其某个 VF 的配置块时,会调用它。
PF 驱动程序通过设置SRIOV_DEVICE_INTERFACE_STANDARD的 ReadVfConfigBlock 成员、配置WDF_QUERY_INTERFACE_CONFIG结构以及调用 WdfDeviceAddQueryInterface 来注册其实现。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows 10 |
最低受支持的服务器 | Windows Server 2016 |
目标平台 | Windows |
标头 | pcivirt.h |
IRQL | PASSIVE_LEVEL |