HvCallSignalEvent

Гипервыск HvCallSignalEvent сигнализирует о событии в секции, которая владеет портом, связанным с указанным соединением.

Событие сигнализируется путем задания бита на странице SIEF одного из виртуальных процессоров секции получения. Вызывающий объект задает относительный номер флага. Фактическое битовое число SIEF вычисляется гипервизором путем добавления указанного номера флага к базовому номеру флага, связанному с портом.

Интерфейс

HV_STATUS
HvCallSignalEvent(
   _In_ HV_CONNECTION_ID ConnectionId,
   _In_ UINT16 FlagNumber
   );

Код вызова

0x005D (Простой)

Входные параметры

Имя Offset Размер Предоставленные сведения
ConnectionId 0 4 Указывает идентификатор соединения.
FlagNumber 4 2 Указывает относительный индекс флага события, который вызывающий объект хочет задать в целевой области SIEF. Это число относительно номера базового флага, связанного с портом.
RsvdZ 6 2

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

Код состояния Условие возникновения ошибки
HV_STATUS_ACCESS_DENIED Секция вызывающего объекта не обладает привилегией SignalEvents.
HV_STATUS_INVALID_CONNECTION_ID Указанный идентификатор подключения недопустим.
HV_STATUS_INVALID_PORT_ID Порт, связанный с указанным соединением, удален.
Порт, связанный с указанным соединением, принадлежит секции, которая не находится в активном состоянии.
Порт, связанный с указанным подключением, не является портом типа события.
HV_STATUS_INVALID_PARAMETER Указанный номер флага больше или равен числу флагов порта.
HV_STATUS_INVALID_VP_INDEX Целевой VP больше не существует или нет доступных виртуальных машин, которым можно опубликовать сообщение.
HV_STATUS_INVALID_SYNIC_STATE SynIC целевого VP отключен и не может принимать сигнальные события.
Страница SIEF целевого VP отключена.