VirtualBox

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


Ignore:
Timestamp:
Feb 1, 2021 3:48:11 PM (4 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
142535
Message:

VMM/HMSVM: Moving some SVM stuff to HMR0PERVM. Removed 3 unused HM::svm members related to I/O bitmap. bugref:9217

File:
1 edited

Legend:

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

    r87508 r87511  
    595595    struct
    596596    {
    597         /** Set by the ring-0 side of HM to indicate SVM is supported by the
    598          *  CPU. */
     597        /** Set by the ring-0 side of HM to indicate SVM is supported by the CPU. */
    599598        bool                        fSupported;
    600599        /** Set when we've enabled SVM. */
    601600        bool                        fEnabled;
    602         /** Set if erratum 170 affects the AMD cpu. */
    603         bool                        fAlwaysFlushTLB;
    604         /** Set when the hack to ignore VERR_SVM_IN_USE is active. */
     601        /** Set when the hack to ignore VERR_SVM_IN_USE is active.
     602         * @todo Safe?  */
    605603        bool                        fIgnoreInUseError;
    606604        /** Whether to use virtualized VMSAVE/VMLOAD feature. */
     
    610608        /** Whether to use LBR virtualization feature. */
    611609        bool                        fLbrVirt;
    612         uint8_t                     u8Alignment0[1];
    613 
    614         /** Physical address of the IO bitmap (12kb). */
    615         RTHCPHYS                    HCPhysIOBitmap;
    616         /** R0 memory object for the IO bitmap (12kb). */
    617         RTR0MEMOBJ                  hMemObjIOBitmap;
    618         /** Virtual address of the IO bitmap. */
    619         R0PTRTYPE(void *)           pvIOBitmap;
     610        uint8_t                     u8Alignment0[2];
    620611
    621612        /* HWCR MSR (for diagnostics) */
     
    624615        /** SVM revision. */
    625616        uint32_t                    u32Rev;
    626         /** SVM feature bits from cpuid 0x8000000a */
    627         uint32_t                    u32Features;
     617        /** SVM feature bits from cpuid 0x8000000a, ring-3 copy. */
     618        uint32_t                    fFeaturesForRing3;
    628619
    629620        /** Pause filter counter. */
     
    660651AssertCompileMemberAlignment(HM, vmx,                 8);
    661652AssertCompileMemberAlignment(HM, svm,                 8);
     653
     654
     655/**
     656 * Per-VM ring-0 instance data for HM.
     657 */
     658typedef struct HMR0PERVM
     659{
     660    /** SVM specific data. */
     661    struct HMR0SVMVM
     662    {
     663        /** Set if erratum 170 affects the AMD cpu. */
     664        bool                        fAlwaysFlushTLB;
     665        bool                        afAlignment0[3];
     666        /** SVM feature bits from cpuid 0x8000000a, safe ring-0 copy. */
     667        uint32_t                    fFeatures;
     668    } svm;
     669} HMR0PERVM;
     670/** Pointer to HM's per-VM ring-0 instance data. */
     671typedef HMR0PERVM *PHMR0PERVM;
    662672
    663673
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