Freigeben über


HvCallEnableVpVtl

Mit HvCallEnableVpVtl kann eine VTL auf einem VP ausgeführt werden. Dieser Hypercall sollte in Verbindung mit HvCallEnablePartitionVtl verwendet werden, um eine VTL zu aktivieren und zu verwenden. Um eine VTL auf einem VP zu aktivieren, muss sie zuerst für die Partition aktiviert werden. Dieser Aufruf ändert die aktive VTL nicht.

Schnittstelle


HV_STATUS
HvCallEnableVpVtl(
   _In_ HV_PARTITION_ID TargetPartitionId,
   _In_ HV_VP_INDEX VpIndex,
   _In_ HV_VTL TargetVtl,
   _In_ HV_INITIAL_VP_CONTEXT VpVtlContext
   );

Einschränkungen

Im Allgemeinen kann eine VTL nur von einer höheren VTL aktiviert werden. Es gibt eine Ausnahme für diese Regel: Die höchste für eine Partition aktivierte VTL kann eine höhere Ziel-VTL aktivieren.

Sobald die Ziel-VTL auf einem VP aktiviert ist, müssen alle anderen Aufrufe, um die VTL zu aktivieren, von gleich oder mehr VTLs stammen. Dieser Hypercall schlägt fehl, wenn aufgerufen wird, eine VTL zu aktivieren, die bereits für einen VP aktiviert ist.

Anrufcode

0x000F (Einfach)

Eingabe-Parameter

x64-Layout

Name Offset Größe Bereitgestellte Informationen
TargetPartitionId 0 8 Stellt die Partitions-ID der Partition bereit, für die diese Anforderung gilt.
VpIndex 8 4 Gibt den Index des virtuellen Prozessors an, für den die VTL aktiviert werden soll.
TargetVtl 12 1 Gibt die VTL an, die von diesem Hypercall aktiviert werden soll.
RsvdZ 13 3
VpVtlContext 16 224 Gibt den Anfangskontext an, in dem der VP beim ersten Eintrag in der Ziel-VTL beginnen soll.

ARM64-Layout

Name Offset Größe Bereitgestellte Informationen
TargetPartitionId 0 8 Stellt die Partitions-ID der Partition bereit, für die diese Anforderung gilt.
VpIndex 8 4 Gibt den Index des virtuellen Prozessors an, für den die VTL aktiviert werden soll.
TargetVtl 12 1 Gibt die VTL an, die von diesem Hypercall aktiviert werden soll.
RsvdZ 13 3
VpVtlContext 16 72 Gibt den Anfangskontext an, in dem der VP beim ersten Eintrag in der Ziel-VTL beginnen soll.

Siehe auch