// pcivirt.h
// CTL_CODE(0x0022, 0x816, METHOD_BUFFERED, FILE_READ_ACCESS)
#define IOCTL_SRIOV_QUERY_MITIGATED_RANGE_COUNT 0x00226058
View the official Windows Driver Kit DDI referenceNo description available.
The request determines the ranges of memory-mapped I/O space that must mitigated.
A pointer to a SRIOV_MITIGATED_RANGE_COUNT_INPUT structure. Set the VfIndex member to 0.
The size of the SRIOV_MITIGATED_RANGE_COUNT_INPUT structure.
A pointer to a SRIOV_MITIGATED_RANGE_COUNT_OUTPUT structure that is filled by the physical function (PF) driver with ranges of memory-mapped I/O space.
The size of the SRIOV_MITIGATED_RANGE_COUNT_OUTPUT structure.
Irp->IoStatus.Status is set to STATUS_SUCCESS if the request is successful. Otherwise, Status to the appropriate error condition as a NTSTATUS code.
This IOCTL request is sent by the virtualization stack to the PCI Express SR-IOV Physical Function (PF) driver that exposes GUID_MITIGABLE_DEVICE_INTERFACE.
The virtualization stack uses an I/O MMU to differentiate traffic coming from the various interfaces that the device exposes, enforcing policy about which regions of memory a device can access and which interrupts it can generate.
The request is sent to the physical function (PF) driver by the virtualization stack to find out the ranges of memory-mapped I/O space in which the stack must place intercepts on those pages and send the requests to read and write values within those pages to the PF driver.