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