VirtualBox

Changeset 79203 in vbox


Ignore:
Timestamp:
Jun 18, 2019 9:14:02 AM (6 years ago)
Author:
vboxsync
Message:

VMM/IEM: Nested VMX: bugref:9180 VMX_VMCS_ENC_XXX -> VMX_VMCSFIELD_XXX.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/VMM/VMMAll/IEMAllCImplVmxInstr.cpp.h

    r79196 r79203  
    194194uint16_t const g_aoffVmcsMap[16][VMX_V_VMCS_MAX_INDEX + 1] =
    195195{
    196     /* VMX_VMCS_ENC_WIDTH_16BIT | VMX_VMCS_ENC_TYPE_CONTROL: */
     196    /* VMX_VMCSFIELD_WIDTH_16BIT | VMX_VMCSFIELD_TYPE_CONTROL: */
    197197    {
    198198        /*     0 */ RT_UOFFSETOF(VMXVVMCS, u16Vpid),
     
    203203        /* 19-25 */ UINT16_MAX, UINT16_MAX, UINT16_MAX, UINT16_MAX, UINT16_MAX, UINT16_MAX, UINT16_MAX
    204204    },
    205     /* VMX_VMCS_ENC_WIDTH_16BIT | VMX_VMCS_ENC_TYPE_VMEXIT_INFO: */
     205    /* VMX_VMCSFIELD_WIDTH_16BIT | VMX_VMCSFIELD_TYPE_VMEXIT_INFO: */
    206206    {
    207207        /*   0-7 */ UINT16_MAX, UINT16_MAX, UINT16_MAX, UINT16_MAX, UINT16_MAX, UINT16_MAX, UINT16_MAX, UINT16_MAX,
     
    210210        /* 24-25 */ UINT16_MAX, UINT16_MAX
    211211    },
    212     /* VMX_VMCS_ENC_WIDTH_16BIT | VMX_VMCS_ENC_TYPE_GUEST_STATE: */
     212    /* VMX_VMCSFIELD_WIDTH_16BIT | VMX_VMCSFIELD_TYPE_GUEST_STATE: */
    213213    {
    214214        /*     0 */ RT_UOFFSETOF(VMXVVMCS, GuestEs),
     
    225225        /* 18-25 */ UINT16_MAX, UINT16_MAX, UINT16_MAX, UINT16_MAX, UINT16_MAX, UINT16_MAX, UINT16_MAX, UINT16_MAX
    226226    },
    227     /* VMX_VMCS_ENC_WIDTH_16BIT | VMX_VMCS_ENC_TYPE_HOST_STATE: */
     227    /* VMX_VMCSFIELD_WIDTH_16BIT | VMX_VMCSFIELD_TYPE_HOST_STATE: */
    228228    {
    229229        /*     0 */ RT_UOFFSETOF(VMXVVMCS, HostEs),
     
    238238        /* 23-25 */ UINT16_MAX, UINT16_MAX, UINT16_MAX
    239239    },
    240     /* VMX_VMCS_ENC_WIDTH_64BIT | VMX_VMCS_ENC_TYPE_CONTROL: */
     240    /* VMX_VMCSFIELD_WIDTH_64BIT | VMX_VMCSFIELD_TYPE_CONTROL: */
    241241    {
    242242        /*     0 */ RT_UOFFSETOF(VMXVVMCS, u64AddrIoBitmapA),
     
    267267        /*    25 */ RT_UOFFSETOF(VMXVVMCS, u64TscMultiplier)
    268268    },
    269     /* VMX_VMCS_ENC_WIDTH_64BIT | VMX_VMCS_ENC_TYPE_VMEXIT_INFO: */
     269    /* VMX_VMCSFIELD_WIDTH_64BIT | VMX_VMCSFIELD_TYPE_VMEXIT_INFO: */
    270270    {
    271271        /*     0 */ RT_UOFFSETOF(VMXVVMCS, u64RoGuestPhysAddr),
     
    275275        /*    25 */ UINT16_MAX
    276276    },
    277     /* VMX_VMCS_ENC_WIDTH_64BIT | VMX_VMCS_ENC_TYPE_GUEST_STATE: */
     277    /* VMX_VMCSFIELD_WIDTH_64BIT | VMX_VMCSFIELD_TYPE_GUEST_STATE: */
    278278    {
    279279        /*     0 */ RT_UOFFSETOF(VMXVVMCS, u64VmcsLinkPtr),
     
    291291        /* 19-25 */ UINT16_MAX, UINT16_MAX, UINT16_MAX, UINT16_MAX, UINT16_MAX, UINT16_MAX, UINT16_MAX
    292292    },
    293     /* VMX_VMCS_ENC_WIDTH_64BIT | VMX_VMCS_ENC_TYPE_HOST_STATE: */
     293    /* VMX_VMCSFIELD_WIDTH_64BIT | VMX_VMCSFIELD_TYPE_HOST_STATE: */
    294294    {
    295295        /*     0 */ RT_UOFFSETOF(VMXVVMCS, u64HostPatMsr),
     
    300300        /* 19-25 */ UINT16_MAX, UINT16_MAX, UINT16_MAX, UINT16_MAX, UINT16_MAX, UINT16_MAX, UINT16_MAX
    301301    },
    302     /* VMX_VMCS_ENC_WIDTH_32BIT | VMX_VMCS_ENC_TYPE_CONTROL: */
     302    /* VMX_VMCSFIELD_WIDTH_32BIT | VMX_VMCSFIELD_TYPE_CONTROL: */
    303303    {
    304304        /*     0 */ RT_UOFFSETOF(VMXVVMCS, u32PinCtls),
     
    322322        /* 18-25 */ UINT16_MAX, UINT16_MAX, UINT16_MAX, UINT16_MAX, UINT16_MAX, UINT16_MAX, UINT16_MAX, UINT16_MAX
    323323    },
    324     /* VMX_VMCS_ENC_WIDTH_32BIT | VMX_VMCS_ENC_TYPE_VMEXIT_INFO: */
     324    /* VMX_VMCSFIELD_WIDTH_32BIT | VMX_VMCSFIELD_TYPE_VMEXIT_INFO: */
    325325    {
    326326        /*     0 */ RT_UOFFSETOF(VMXVVMCS, u32RoVmInstrError),
     
    336336        /* 24-25 */ UINT16_MAX, UINT16_MAX
    337337    },
    338     /* VMX_VMCS_ENC_WIDTH_32BIT | VMX_VMCS_ENC_TYPE_GUEST_STATE: */
     338    /* VMX_VMCSFIELD_WIDTH_32BIT | VMX_VMCSFIELD_TYPE_GUEST_STATE: */
    339339    {
    340340        /*     0 */ RT_UOFFSETOF(VMXVVMCS, u32GuestEsLimit),
     
    363363        /* 23-25 */ UINT16_MAX, UINT16_MAX, UINT16_MAX
    364364    },
    365     /* VMX_VMCS_ENC_WIDTH_32BIT | VMX_VMCS_ENC_TYPE_HOST_STATE: */
     365    /* VMX_VMCSFIELD_WIDTH_32BIT | VMX_VMCSFIELD_TYPE_HOST_STATE: */
    366366    {
    367367        /*     0 */ RT_UOFFSETOF(VMXVVMCS, u32HostSysenterCs),
     
    371371        /*    25 */ UINT16_MAX
    372372    },
    373     /* VMX_VMCS_ENC_WIDTH_NATURAL | VMX_VMCS_ENC_TYPE_CONTROL: */
     373    /* VMX_VMCSFIELD_WIDTH_NATURAL | VMX_VMCSFIELD_TYPE_CONTROL: */
    374374    {
    375375        /*     0 */ RT_UOFFSETOF(VMXVVMCS, u64Cr0Mask),
     
    385385        /* 24-25 */ UINT16_MAX, UINT16_MAX
    386386    },
    387     /* VMX_VMCS_ENC_WIDTH_NATURAL | VMX_VMCS_ENC_TYPE_VMEXIT_INFO: */
     387    /* VMX_VMCSFIELD_WIDTH_NATURAL | VMX_VMCSFIELD_TYPE_VMEXIT_INFO: */
    388388    {
    389389        /*     0 */ RT_UOFFSETOF(VMXVVMCS, u64RoExitQual),
     
    397397        /* 22-25 */ UINT16_MAX, UINT16_MAX, UINT16_MAX, UINT16_MAX
    398398    },
    399     /* VMX_VMCS_ENC_WIDTH_NATURAL | VMX_VMCS_ENC_TYPE_GUEST_STATE: */
     399    /* VMX_VMCSFIELD_WIDTH_NATURAL | VMX_VMCSFIELD_TYPE_GUEST_STATE: */
    400400    {
    401401        /*     0 */ RT_UOFFSETOF(VMXVVMCS, u64GuestCr0),
     
    421421        /* 20-25 */ UINT16_MAX, UINT16_MAX, UINT16_MAX, UINT16_MAX, UINT16_MAX, UINT16_MAX
    422422    },
    423     /* VMX_VMCS_ENC_WIDTH_NATURAL | VMX_VMCS_ENC_TYPE_HOST_STATE: */
     423    /* VMX_VMCSFIELD_WIDTH_NATURAL | VMX_VMCSFIELD_TYPE_HOST_STATE: */
    424424    {
    425425        /*     0 */ RT_UOFFSETOF(VMXVVMCS, u64HostCr0),
     
    451451    Assert(iSegReg < X86_SREG_COUNT);
    452452    RTSEL HostSel;
    453     uint8_t  const  uWidth     = VMX_VMCS_ENC_WIDTH_16BIT;
    454     uint8_t  const  uType      = VMX_VMCS_ENC_TYPE_HOST_STATE;
     453    uint8_t  const  uWidth     = VMX_VMCSFIELD_WIDTH_16BIT;
     454    uint8_t  const  uType      = VMX_VMCSFIELD_TYPE_HOST_STATE;
    455455    uint8_t  const  uWidthType = (uWidth << 2) | uType;
    456     uint8_t  const  uIndex     = iSegReg + RT_BF_GET(VMX_VMCS16_HOST_ES_SEL, VMX_BF_VMCS_ENC_INDEX);
     456    uint8_t  const  uIndex     = iSegReg + RT_BF_GET(VMX_VMCS16_HOST_ES_SEL, VMX_BF_VMCSFIELD_INDEX);
    457457    Assert(uIndex <= VMX_V_VMCS_MAX_INDEX);
    458458    uint16_t const  offField   = g_aoffVmcsMap[uWidthType][uIndex];
     
    478478    /* Selector. */
    479479    {
    480         uint8_t  const  uWidth     = VMX_VMCS_ENC_WIDTH_16BIT;
    481         uint8_t  const  uType      = VMX_VMCS_ENC_TYPE_GUEST_STATE;
     480        uint8_t  const  uWidth     = VMX_VMCSFIELD_WIDTH_16BIT;
     481        uint8_t  const  uType      = VMX_VMCSFIELD_TYPE_GUEST_STATE;
    482482        uint8_t  const  uWidthType = (uWidth << 2) | uType;
    483         uint8_t  const  uIndex     = iSegReg + RT_BF_GET(VMX_VMCS16_GUEST_ES_SEL, VMX_BF_VMCS_ENC_INDEX);
     483        uint8_t  const  uIndex     = iSegReg + RT_BF_GET(VMX_VMCS16_GUEST_ES_SEL, VMX_BF_VMCSFIELD_INDEX);
    484484        Assert(uIndex <= VMX_V_VMCS_MAX_INDEX);
    485485        uint16_t const  offField   = g_aoffVmcsMap[uWidthType][uIndex];
     
    491491    /* Limit. */
    492492    {
    493         uint8_t  const  uWidth     = VMX_VMCS_ENC_WIDTH_32BIT;
    494         uint8_t  const  uType      = VMX_VMCS_ENC_TYPE_GUEST_STATE;
     493        uint8_t  const  uWidth     = VMX_VMCSFIELD_WIDTH_32BIT;
     494        uint8_t  const  uType      = VMX_VMCSFIELD_TYPE_GUEST_STATE;
    495495        uint8_t  const  uWidthType = (uWidth << 2) | uType;
    496         uint8_t  const  uIndex     = iSegReg + RT_BF_GET(VMX_VMCS32_GUEST_ES_LIMIT, VMX_BF_VMCS_ENC_INDEX);
     496        uint8_t  const  uIndex     = iSegReg + RT_BF_GET(VMX_VMCS32_GUEST_ES_LIMIT, VMX_BF_VMCSFIELD_INDEX);
    497497        Assert(uIndex <= VMX_V_VMCS_MAX_INDEX);
    498498        uint16_t const  offField   = g_aoffVmcsMap[uWidthType][uIndex];
     
    504504    /* Base. */
    505505    {
    506         uint8_t  const  uWidth     = VMX_VMCS_ENC_WIDTH_NATURAL;
    507         uint8_t  const  uType      = VMX_VMCS_ENC_TYPE_GUEST_STATE;
     506        uint8_t  const  uWidth     = VMX_VMCSFIELD_WIDTH_NATURAL;
     507        uint8_t  const  uType      = VMX_VMCSFIELD_TYPE_GUEST_STATE;
    508508        uint8_t  const  uWidthType = (uWidth << 2) | uType;
    509         uint8_t  const  uIndex     = iSegReg + RT_BF_GET(VMX_VMCS_GUEST_ES_BASE, VMX_BF_VMCS_ENC_INDEX);
     509        uint8_t  const  uIndex     = iSegReg + RT_BF_GET(VMX_VMCS_GUEST_ES_BASE, VMX_BF_VMCSFIELD_INDEX);
    510510        Assert(uIndex <= VMX_V_VMCS_MAX_INDEX);
    511511        uint16_t const  offField   = g_aoffVmcsMap[uWidthType][uIndex];
     
    520520                                      | X86DESCATTR_AVL  | X86DESCATTR_L   | X86DESCATTR_D   | X86DESCATTR_G
    521521                                      | X86DESCATTR_UNUSABLE;
    522         uint8_t  const  uWidth     = VMX_VMCS_ENC_WIDTH_32BIT;
    523         uint8_t  const  uType      = VMX_VMCS_ENC_TYPE_GUEST_STATE;
     522        uint8_t  const  uWidth     = VMX_VMCSFIELD_WIDTH_32BIT;
     523        uint8_t  const  uType      = VMX_VMCSFIELD_TYPE_GUEST_STATE;
    524524        uint8_t  const  uWidthType = (uWidth << 2) | uType;
    525         uint8_t  const  uIndex     = iSegReg + RT_BF_GET(VMX_VMCS32_GUEST_ES_ACCESS_RIGHTS, VMX_BF_VMCS_ENC_INDEX);
     525        uint8_t  const  uIndex     = iSegReg + RT_BF_GET(VMX_VMCS32_GUEST_ES_ACCESS_RIGHTS, VMX_BF_VMCSFIELD_INDEX);
    526526        Assert(uIndex <= VMX_V_VMCS_MAX_INDEX);
    527527        uint16_t const  offField   = g_aoffVmcsMap[uWidthType][uIndex];
     
    553553    uint16_t u16Sel;
    554554    {
    555         uint8_t  const  uWidth     = VMX_VMCS_ENC_WIDTH_16BIT;
    556         uint8_t  const  uType      = VMX_VMCS_ENC_TYPE_GUEST_STATE;
     555        uint8_t  const  uWidth     = VMX_VMCSFIELD_WIDTH_16BIT;
     556        uint8_t  const  uType      = VMX_VMCSFIELD_TYPE_GUEST_STATE;
    557557        uint8_t  const  uWidthType = (uWidth << 2) | uType;
    558         uint8_t  const  uIndex     = iSegReg + RT_BF_GET(VMX_VMCS16_GUEST_ES_SEL, VMX_BF_VMCS_ENC_INDEX);
     558        uint8_t  const  uIndex     = iSegReg + RT_BF_GET(VMX_VMCS16_GUEST_ES_SEL, VMX_BF_VMCSFIELD_INDEX);
    559559        AssertReturn(uIndex <= VMX_V_VMCS_MAX_INDEX, VERR_IEM_IPE_3);
    560560        uint16_t const  offField   = g_aoffVmcsMap[uWidthType][uIndex];
     
    567567    uint32_t u32Limit;
    568568    {
    569         uint8_t  const  uWidth     = VMX_VMCS_ENC_WIDTH_32BIT;
    570         uint8_t  const  uType      = VMX_VMCS_ENC_TYPE_GUEST_STATE;
     569        uint8_t  const  uWidth     = VMX_VMCSFIELD_WIDTH_32BIT;
     570        uint8_t  const  uType      = VMX_VMCSFIELD_TYPE_GUEST_STATE;
    571571        uint8_t  const  uWidthType = (uWidth << 2) | uType;
    572         uint8_t  const  uIndex     = iSegReg + RT_BF_GET(VMX_VMCS32_GUEST_ES_LIMIT, VMX_BF_VMCS_ENC_INDEX);
     572        uint8_t  const  uIndex     = iSegReg + RT_BF_GET(VMX_VMCS32_GUEST_ES_LIMIT, VMX_BF_VMCSFIELD_INDEX);
    573573        AssertReturn(uIndex <= VMX_V_VMCS_MAX_INDEX, VERR_IEM_IPE_3);
    574574        uint16_t const  offField   = g_aoffVmcsMap[uWidthType][uIndex];
     
    581581    uint64_t u64Base;
    582582    {
    583         uint8_t  const  uWidth     = VMX_VMCS_ENC_WIDTH_NATURAL;
    584         uint8_t  const  uType      = VMX_VMCS_ENC_TYPE_GUEST_STATE;
     583        uint8_t  const  uWidth     = VMX_VMCSFIELD_WIDTH_NATURAL;
     584        uint8_t  const  uType      = VMX_VMCSFIELD_TYPE_GUEST_STATE;
    585585        uint8_t  const  uWidthType = (uWidth << 2) | uType;
    586         uint8_t  const  uIndex     = iSegReg + RT_BF_GET(VMX_VMCS_GUEST_ES_BASE, VMX_BF_VMCS_ENC_INDEX);
     586        uint8_t  const  uIndex     = iSegReg + RT_BF_GET(VMX_VMCS_GUEST_ES_BASE, VMX_BF_VMCSFIELD_INDEX);
    587587        AssertReturn(uIndex <= VMX_V_VMCS_MAX_INDEX, VERR_IEM_IPE_3);
    588588        uint16_t const  offField   = g_aoffVmcsMap[uWidthType][uIndex];
     
    596596    uint32_t u32Attr;
    597597    {
    598         uint8_t  const  uWidth     = VMX_VMCS_ENC_WIDTH_32BIT;
    599         uint8_t  const  uType      = VMX_VMCS_ENC_TYPE_GUEST_STATE;
     598        uint8_t  const  uWidth     = VMX_VMCSFIELD_WIDTH_32BIT;
     599        uint8_t  const  uType      = VMX_VMCSFIELD_TYPE_GUEST_STATE;
    600600        uint8_t  const  uWidthType = (uWidth << 2) | uType;
    601         uint8_t  const  uIndex     = iSegReg + RT_BF_GET(VMX_VMCS32_GUEST_ES_ACCESS_RIGHTS, VMX_BF_VMCS_ENC_INDEX);
     601        uint8_t  const  uIndex     = iSegReg + RT_BF_GET(VMX_VMCS32_GUEST_ES_ACCESS_RIGHTS, VMX_BF_VMCSFIELD_INDEX);
    602602        AssertReturn(uIndex <= VMX_V_VMCS_MAX_INDEX, VERR_IEM_IPE_3);
    603603        uint16_t const  offField   = g_aoffVmcsMap[uWidthType][uIndex];
     
    628628{
    629629    Assert(idxCr3Target < VMX_V_CR3_TARGET_COUNT);
    630     uint8_t  const  uWidth         = VMX_VMCS_ENC_WIDTH_NATURAL;
    631     uint8_t  const  uType          = VMX_VMCS_ENC_TYPE_CONTROL;
     630    uint8_t  const  uWidth         = VMX_VMCSFIELD_WIDTH_NATURAL;
     631    uint8_t  const  uType          = VMX_VMCSFIELD_TYPE_CONTROL;
    632632    uint8_t  const  uWidthType     = (uWidth << 2) | uType;
    633     uint8_t  const  uIndex         = idxCr3Target + RT_BF_GET(VMX_VMCS_CTRL_CR3_TARGET_VAL0, VMX_BF_VMCS_ENC_INDEX);
     633    uint8_t  const  uIndex         = idxCr3Target + RT_BF_GET(VMX_VMCS_CTRL_CR3_TARGET_VAL0, VMX_BF_VMCSFIELD_INDEX);
    634634    Assert(uIndex <= VMX_V_VMCS_MAX_INDEX);
    635635    uint16_t const  offField       = g_aoffVmcsMap[uWidthType][uIndex];
     
    75977597    VMXVMCSFIELD VmcsField;
    75987598    VmcsField.u = u64VmcsField;
    7599     uint8_t  const uWidth     = RT_BF_GET(VmcsField.u, VMX_BF_VMCS_ENC_WIDTH);
    7600     uint8_t  const uType      = RT_BF_GET(VmcsField.u, VMX_BF_VMCS_ENC_TYPE);
     7599    uint8_t  const uWidth     = RT_BF_GET(VmcsField.u, VMX_BF_VMCSFIELD_WIDTH);
     7600    uint8_t  const uType      = RT_BF_GET(VmcsField.u, VMX_BF_VMCSFIELD_TYPE);
    76017601    uint8_t  const uWidthType = (uWidth << 2) | uType;
    7602     uint8_t  const uIndex     = RT_BF_GET(VmcsField.u, VMX_BF_VMCS_ENC_INDEX);
     7602    uint8_t  const uIndex     = RT_BF_GET(VmcsField.u, VMX_BF_VMCSFIELD_INDEX);
    76037603    AssertReturn(uIndex <= VMX_V_VMCS_MAX_INDEX, VERR_IEM_IPE_2);
    76047604    uint16_t const offField   = g_aoffVmcsMap[uWidthType][uIndex];
     
    76197619    switch (uEffWidth)
    76207620    {
    7621         case VMX_VMCS_ENC_WIDTH_64BIT:
    7622         case VMX_VMCS_ENC_WIDTH_NATURAL: *pu64Dst = *(uint64_t *)pbField; break;
    7623         case VMX_VMCS_ENC_WIDTH_32BIT:   *pu64Dst = *(uint32_t *)pbField; break;
    7624         case VMX_VMCS_ENC_WIDTH_16BIT:   *pu64Dst = *(uint16_t *)pbField; break;
     7621        case VMX_VMCSFIELD_WIDTH_64BIT:
     7622        case VMX_VMCSFIELD_WIDTH_NATURAL: *pu64Dst = *(uint64_t *)pbField; break;
     7623        case VMX_VMCSFIELD_WIDTH_32BIT:   *pu64Dst = *(uint32_t *)pbField; break;
     7624        case VMX_VMCSFIELD_WIDTH_16BIT:   *pu64Dst = *(uint16_t *)pbField; break;
    76257625    }
    76267626    return VINF_SUCCESS;
     
    78527852    VMXVMCSFIELD VmcsField;
    78537853    VmcsField.u = u64VmcsField;
    7854     uint8_t  const uWidth     = RT_BF_GET(VmcsField.u, VMX_BF_VMCS_ENC_WIDTH);
    7855     uint8_t  const uType      = RT_BF_GET(VmcsField.u, VMX_BF_VMCS_ENC_TYPE);
     7854    uint8_t  const uWidth     = RT_BF_GET(VmcsField.u, VMX_BF_VMCSFIELD_WIDTH);
     7855    uint8_t  const uType      = RT_BF_GET(VmcsField.u, VMX_BF_VMCSFIELD_TYPE);
    78567856    uint8_t  const uWidthType = (uWidth << 2) | uType;
    7857     uint8_t  const uIndex     = RT_BF_GET(VmcsField.u, VMX_BF_VMCS_ENC_INDEX);
     7857    uint8_t  const uIndex     = RT_BF_GET(VmcsField.u, VMX_BF_VMCSFIELD_INDEX);
    78587858    AssertReturn(uIndex <= VMX_V_VMCS_MAX_INDEX, VERR_IEM_IPE_2);
    78597859    uint16_t const offField   = g_aoffVmcsMap[uWidthType][uIndex];
     
    78707870    switch (uEffWidth)
    78717871    {
    7872         case VMX_VMCS_ENC_WIDTH_64BIT:
    7873         case VMX_VMCS_ENC_WIDTH_NATURAL: *(uint64_t *)pbField = u64Val; break;
    7874         case VMX_VMCS_ENC_WIDTH_32BIT:   *(uint32_t *)pbField = u64Val; break;
    7875         case VMX_VMCS_ENC_WIDTH_16BIT:   *(uint16_t *)pbField = u64Val; break;
     7872        case VMX_VMCSFIELD_WIDTH_64BIT:
     7873        case VMX_VMCSFIELD_WIDTH_NATURAL: *(uint64_t *)pbField = u64Val; break;
     7874        case VMX_VMCSFIELD_WIDTH_32BIT:   *(uint32_t *)pbField = u64Val; break;
     7875        case VMX_VMCSFIELD_WIDTH_16BIT:   *(uint16_t *)pbField = u64Val; break;
    78767876    }
    78777877
Note: See TracChangeset for help on using the changeset viewer.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette