VirtualBox

Changeset 87401 in vbox for trunk/src/VBox/VMM/include


Ignore:
Timestamp:
Jan 23, 2021 2:45:29 AM (4 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
142389
Message:

VMM/HMVMX: Use wrgsbase and wrfsbase instead of wrmsr if we can when restoring the host GS and FS selectors. Align gdtr and idtr in hmR0VmxExportHostSegmentRegs. Don't check SUPKERNELFEATURES_GDT_NEED_WRITABLE or call SUPR0GetCurrentGdtRw just for VMX_RESTORE_HOST_GDTR, we only need that for restoring TR.

Location:
trunk/src/VBox/VMM/include
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/VMM/include/HMInternal.h

    r87389 r87401  
    884884#define VMX_RESTORE_HOST_GDT_READ_ONLY                          RT_BIT(7)
    885885#define VMX_RESTORE_HOST_GDT_NEED_WRITABLE                      RT_BIT(8)
     886#define VMX_RESTORE_HOST_CAN_USE_WRFSBASE_AND_WRGSBASE          RT_BIT(9)
    886887/**
    887888 * This _must_ be the top most bit, so that we can easily that that it and
     
    896897 * @endcode
    897898 */
    898 #define VMX_RESTORE_HOST_REQUIRED                               RT_BIT(9)
     899#define VMX_RESTORE_HOST_REQUIRED                               RT_BIT(10)
    899900/** @} */
    900901
     
    10371038            /** Alignment. */
    10381039            uint8_t                     au8Alignment0[3];
    1039             /** Which host-state bits to restore before being preempted. */
     1040            /** Which host-state bits to restore before being preempted, see
     1041             * VMX_RESTORE_HOST_XXX. */
    10401042            uint32_t                    fRestoreHostFlags;
    10411043            /** Alignment. */
  • trunk/src/VBox/VMM/include/HMInternal.mac

    r87389 r87401  
    9393%define VMX_RESTORE_HOST_GDT_READ_ONLY                          0080h   ;RT_BIT(7)
    9494%define VMX_RESTORE_HOST_GDT_NEED_WRITABLE                      0100h   ;RT_BIT(8)
    95 %define VMX_RESTORE_HOST_REQUIRED                               0200h   ;RT_BIT(9) - must be the highest bit!
     95%define VMX_RESTORE_HOST_CAN_USE_WRFSBASE_AND_WRGSBASE          0200h   ;RT_BIT(9)
     96%define VMX_RESTORE_HOST_REQUIRED                               0400h   ;RT_BIT(10) - must be the highest bit!
    9697struc VMXRESTOREHOST
    9798    .uHostSelDS                     resw    1
Note: See TracChangeset for help on using the changeset viewer.

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