функция обратного вызова VPCI_READ_BLOCK (vpci.h)
Программа ReadVfConfigBlock считывает блок данных конфигурации для виртуальной функции PCI Express (PCIe). Эта подпрограмма вызывается драйвером VF PCIe на устройстве, поддерживающем единый корневой интерфейс виртуализации ввода-вывода (SR-IOV).
Синтаксис
VPCI_READ_BLOCK VpciReadBlock;
NTSTATUS VpciReadBlock(
PVOID Context,
ULONG BlockId,
PVOID Buffer,
ULONG Length
)
{...}
Параметры
Context
[in] Указатель на сведения о контексте для интерфейса. Вызывающий объект передает значение, передаваемое как элемент контекста контекста члена структуры VPCI_INTERFACE_STANDARD для интерфейса.
BlockId
[in] Идентификатор блока конфигурации VF для чтения. Этот идентификатор является владельцем независимого поставщика оборудования (IHV) и используется только драйверами физической функции PCIe (PF) и VF на устройстве.
Buffer
[out] Указатель на выделенный вызывающим буфером, который будет содержать данные конфигурации для чтения. Дополнительные сведения см. в разделе "Примечания".
Length
[in] Количество байтов, считываемых из блока конфигурации VF.
Заметка
Значение этого параметра не должно превышать VPCI_MAX_READ_WRITE_BLOCK_SIZE.
Возвращаемое значение
Подпрограмма readVfConfig Block возвращает STATUS_SUCCESS, если операция выполнена успешно. В противном случае подпрограмма возвращает соответствующее значение NTSTATUS.
Замечания
Когда вызывается подпрограмма ReadVfConfigBlock, драйвер PF получает уведомление о возврате данных из указанного блока конфигурации VF.
Блок конфигурации VF используется для взаимодействия между драйверами PF и VF на устройстве, поддерживающем интерфейс SR-IOV. IHV может определить один или несколько блоков конфигурации VF для устройства. Каждый блок конфигурации VF имеет определенный IHV формат, длину и идентификатор блока.
Данные конфигурации VF можно обмениваться следующими драйверами в защищенном режиме:
- Драйвер VF, который выполняется в гостевой операционной системе. Эта операционная система выполняется в дочерней секции Hyper-V.
- Драйвер PF, который выполняется в операционной системе управления. Эта операционная система выполняется в родительском разделе Hyper-V.
Данные из каждого блока конфигурации VF используются только драйверами PF и VF.
Заметка
IOCTL_VPCI_READ_BLOCK IOCTL предлагает асинхронную альтернативу подпрограмме ReadVfConfigBlock.
Требования
Требование | Ценность |
---|---|
минимальный поддерживаемый сервер | Windows Server 2012 |
заголовка | vpci.h |
IRQL | <= APC_LEVEL |