VirtualBox

Changeset 72743 in vbox


Ignore:
Timestamp:
Jun 29, 2018 7:35:49 AM (7 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
123279
Message:

VMM: Extend HM changed flags. ​bugref:9193 [IEM]

Location:
trunk
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/include/VBox/vmm/iem.h

    r72643 r72743  
    221221/** The CPUMCTX_EXTRN_XXX mask needed when calling IEMExecSvmVmexit().
    222222 * IEM will ASSUME the caller has ensured these are already present. */
    223 # define IEM_CPUMCTX_EXTRN_SVM_VMEXIT_MASK   (  CPUMCTX_EXTRN_RSP \
    224                                               | CPUMCTX_EXTRN_RAX \
    225                                               | CPUMCTX_EXTRN_RIP \
    226                                               | CPUMCTX_EXTRN_RFLAGS \
    227                                               | CPUMCTX_EXTRN_CS \
    228                                               | CPUMCTX_EXTRN_SS \
    229                                               | CPUMCTX_EXTRN_DS \
    230                                               | CPUMCTX_EXTRN_ES \
    231                                               | CPUMCTX_EXTRN_GDTR \
    232                                               | CPUMCTX_EXTRN_IDTR \
    233                                               | CPUMCTX_EXTRN_CR_MASK \
    234                                               | CPUMCTX_EXTRN_EFER \
    235                                               | CPUMCTX_EXTRN_DR6 \
    236                                               | CPUMCTX_EXTRN_DR7 \
    237                                               | CPUMCTX_EXTRN_OTHER_MSRS \
    238                                               | CPUMCTX_EXTRN_HWVIRT)
     223# define IEM_CPUMCTX_EXTRN_SVM_VMEXIT_MASK         (  CPUMCTX_EXTRN_RSP \
     224                                                    | CPUMCTX_EXTRN_RAX \
     225                                                    | CPUMCTX_EXTRN_RIP \
     226                                                    | CPUMCTX_EXTRN_RFLAGS \
     227                                                    | CPUMCTX_EXTRN_CS \
     228                                                    | CPUMCTX_EXTRN_SS \
     229                                                    | CPUMCTX_EXTRN_DS \
     230                                                    | CPUMCTX_EXTRN_ES \
     231                                                    | CPUMCTX_EXTRN_GDTR \
     232                                                    | CPUMCTX_EXTRN_IDTR \
     233                                                    | CPUMCTX_EXTRN_CR_MASK \
     234                                                    | CPUMCTX_EXTRN_EFER \
     235                                                    | CPUMCTX_EXTRN_DR6 \
     236                                                    | CPUMCTX_EXTRN_DR7 \
     237                                                    | CPUMCTX_EXTRN_OTHER_MSRS \
     238                                                    | CPUMCTX_EXTRN_HWVIRT \
     239                                                    | CPUMCTX_EXTRN_APIC_TPR \
     240                                                    | CPUMCTX_EXTRN_HM_SVM_HWVIRT_VIRQ)
     241
     242/** The CPUMCTX_EXTRN_XXX mask needed when calling IEMExecDecodedVmrun().
     243 *  IEM will ASSUME the caller has ensured these are already present. */
     244# define IEM_CPUMCTX_EXTRN_SVM_VMRUN_MASK          IEM_CPUMCTX_EXTRN_SVM_VMEXIT_MASK
    239245#endif
    240246
  • trunk/src/VBox/VMM/VMMAll/IEMAll.cpp

    r72712 r72743  
    53035303     * Get all the state that we might need here.
    53045304     */
    5305 #ifdef IN_RING0
    5306     int rc = HMR0EnsureCompleteBasicContext(pVCpu, IEM_GET_CTX(pVCpu));
    5307     AssertRCReturn(rc, rc);
    5308 #endif
    53095305    IEM_CTX_IMPORT_RET(pVCpu, IEM_CPUMCTX_EXTRN_XCPT_MASK);
    53105306    IEM_CTX_ASSERT(pVCpu, IEM_CPUMCTX_EXTRN_XCPT_MASK);
     
    1514415140{
    1514515141    IEMEXEC_ASSERT_INSTR_LEN_RETURN(cbInstr, 3);
     15142    IEM_CTX_ASSERT(pVCpu, IEM_CPUMCTX_EXTRN_SVM_VMRUN_MASK);
    1514615143
    1514715144    iemInitExec(pVCpu, false /*fBypassHandlers*/);
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