WHvRequestVpciDeviceInterrupt

Предоставляет логическое прерывание в секцию, которая владеет назначенным виртуальным устройством PCI.

Синтаксис

HRESULT
WINAPI
WHvRequestVpciDeviceInterrupt(
    _In_ WHV_PARTITION_HANDLE Partition,
    _In_ UINT64 LogicalDeviceId,
    _In_ UINT64 MsiAddress,
    _In_ UINT32 MsiData
    );

Parameters

Partition

Обработайте секцию, которая владеет виртуальным устройством PCI.

LogicalDeviceId

Указывает идентификатор логического устройства виртуального PCI, назначенный при создании устройства.

MsiAddress

Указывает MSI-адрес прерывания для доставки, как возвращается WHvMapVpciDeviceInterrupt.

MsiData

Указывает полезные данные MSI прерывания для доставки, как возвращается WHvMapVpciDeviceInterrupt.

Возвращаемое значение

Если функция выполнена успешно, возвращается S_OKзначение.

Если значение x64 MsiAddress больше 0xFFFFFFFF, функция возвращается HRESULT_FROM_WIN32(ERROR_HV_INVALID_PARAMETER). Гипервизор выполняет оставшуюся проверку устройства и прерывания.

Remarks

Функция WHvRequestVpciDeviceInterrupt утверждает прерывание для устройства, созданного с включенными логическими прерываниями. Прерывание определяется и MsiAddressMsiData значениями, возвращаемыми WHvMapVpciDeviceInterrupt, и передается виртуальным процессорам, которые в настоящее время предназначено для сопоставления.

Этот вызов позволяет стеку виртуализации внедрять прерывание от имени устройства, а не полагаться на физические ресурсы, чтобы сообщить о нем. Сопоставить прерывание WHvMapVpciDeviceInterrupt с запросом доставки.

Требования

Requirement Ценность
Минимальный поддерживаемый Windows Windows 10 версии 20H2 (x64); Windows 11 версии 24H2, сборка 26100.3915 (Arm64)
Header WinHvPlatform.h
Библиотека WinHvPlatform.lib
DLL WinHvPlatform.dll
Architecture x64, Arm64

См. также