WHvRequestVpciDeviceInterrupt

Dostarcza logiczne przerwanie partycji, która jest właścicielem przypisanego wirtualnego urządzenia PCI.

Składnia

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

Parameters

Partition

Dojście do partycji, która jest właścicielem wirtualnego urządzenia PCI.

LogicalDeviceId

Określa identyfikator urządzenia logicznego wirtualnego urządzenia PCI, zgodnie z przypisaną podczas tworzenia urządzenia.

MsiAddress

Określa adres MSI przerwania do dostarczenia, jak zwracany przez WHvMapVpciDeviceInterrupt.

MsiData

Określa ładunek danych MSI przerwania do dostarczenia, jak zwracany przez WHvMapVpciDeviceInterrupt.

Wartość zwracana

Jeśli funkcja powiedzie się, zwracana wartość to S_OK.

Jeśli wartość x64 MsiAddress jest większa niż 0xFFFFFFFF, funkcja zwraca HRESULT_FROM_WIN32(ERROR_HV_INVALID_PARAMETER)wartość . Funkcja hypervisor wykonuje pozostałą walidację urządzenia i przerywa.

Remarks

Funkcja WHvRequestVpciDeviceInterrupt potwierdza przerwanie dla urządzenia, które zostało utworzone z włączonymi przerwaniami logicznymi. Przerwanie jest identyfikowane przez MsiAddress wartości i MsiData zwracane przez WHvMapVpciDeviceInterruptelement i jest dostarczane do procesorów wirtualnych, które obecnie jest mapowane jako docelowe.

To wywołanie umożliwia stosowi wirtualizacji wstrzyknięcie przerwania w imieniu urządzenia zamiast polegać na zasobach fizycznych, aby go zasygnalizować. Zamapuj przerwanie WHvMapVpciDeviceInterrupt na przed żądaniem dostarczenia.

Requirements

Requirement Value
Minimalna obsługiwana Windows Windows 10, wersja 20H2 (x64); Windows 11, wersja 24H2, kompilacja 26100.3915 (Arm64)
Header WinHvPlatform.h
Biblioteka WinHvPlatform.lib
DLL WinHvPlatform.dll
Architecture x64, Arm64

Zobacz także